1
0
mirror of https://github.com/samba-team/samba.git synced 2025-01-25 06:04:04 +03:00

875 Commits

Author SHA1 Message Date
Andrew Tridgell
3480524e15 enable sysv ipc and fast share modes on OSF1 -
Andrew Tridgell
7d80e25bb4 need includes.h to compile on some systems (eg. sunos4) -
Andrew Tridgell
6ca96782ac fix for broken sunos4 includes (doesn't have SHM_R) -
Andrew Tridgell
af13f5e178 fix cast -
Andrew Tridgell
4db076e08b define semun for broken solaris sysvipc -
Andrew Tridgell
9f0be847fd lower the default hash size if SEMMSL isn't defined -
Andrew Tridgell
6388da22eb define USE_SYSV_IPC on sunos4 -
Andrew Tridgell
8f2366e57d define USE_SYSV_IPC on a bunch more systems.
Needs some testing though.
-
Andrew Tridgell
cc8fe0f062 SYSV IPC implementation of fast share modes.
It will try sysv IPC first, then if that fails it will try mmap(),
then after that it will try share files.

I have defined USE_SYSV_IPC for Linux, Solaris and HPUX at the
moment. Probably a lot more could have it defined. In fact, the vast
majority of systems support it. Need autoconf again :-)

It should actually be faster than the mmap() version, and doesn't need
any lock files. This means the problem of the share mem file being on
a NFS drive will be gone.
-
Andrew Tridgell
c63fee2b28 refuse pathworks type R connect (patch from Stephen Tweedie) -
Luke Leighton
2f3cca23e2 added LSA_Q_CLOSE and LSA_R_CLOSE (also to smb.h). implemented in smbclient.
updated Query Info Policy to report domain name and domain sid for info levels
3 and 5.
fixed bug in dom_sid_to_string (idauths decoded wrong).  fixed bug in DOM_SID:
subauths are 32 bit not 16.
-
Jeremy Allison
4021a1bf55 Fixed bug where we are a WINS server but not a domain master
browser. We were doing a name query instead of a name status.
Jeremy.
-
Jeremy Allison
598e98e561 Fixed ntclient.c so it would compile.
Jeremy.
-
Samba Release Account
28ef0df30e preparing for release of 1.9.18alpha6 -
Samba Release Account
81374d3066 spelling mistake -
Luke Leighton
69777caec1 updated to indicate reported success with NT 3.51 as well as NT 4.0 -
Samba Release Account
d4bf6deb5a updated header to 1.9.18alpha6 -
Luke Leighton
541fb82895 added LSA Query Info Policy.
fixed a problem with byte ordering (doing an SIVAL of the setup parameters
which was _also_ being done in the creation of the SMB header.  oops).
-
Luke Leighton
85d132da67 checks against file handle in api_fd_reply(). i don't know what error
message should be returned, so i just let it fall through to sending an
"api_unsupported"
-
Luke Leighton
f5c24c8d9c documented LSA Open Policy Query. -
Luke Leighton
16cc27852b added LSA Open Policy query and response processing to smbclient -
Andrew Tridgell
c6ac10170d change the default file permissions on the SHARE_MEM_FILE* to
0644. smbstatus now gets only read permission on the share files and
does no locking.

also get rid of some unnecessary umask(0) calls. smbd always runs with
umask(0)
-
Andrew Tridgell
0f15558efb also disable read prediction in 1.9.18 -
Andrew Tridgell
ed71534df5 Fixed 2 oplock bugs:
1) the oplock macros in smb.h used | where they should have used
&. This means that smbd thought that all clients were always
requesting oplocks. This would have _really_ confused smbclient
and smbfs when they started receiving async oplock break requests when
they don't even know what an oplock is!

2) an oplock break request from a client can be embedded in a normal
lockingX request, and will be if the client has batched any lock
requests internally. The smbd code assumed that all oplock break
requests had num_locks==num_ulocks==0 which is not true. The only
thing special about a oplock break request with
num_locks==num_ulocks==0 is that no reply is sent. Otherwise it is
processed as a normal locking request in addition to the oplock break
processing.

These two fixes get the MS mail system in Win98 working on a Samba
1.9.18 network drive.

Andrew
-
Luke Leighton
800a7218bc added mention of compile-time experimentational NT Domain code. -
Luke Leighton
0a549e62fb hooray. hooray some more. hooray a lot. got the client-side working.
Q/R LSA_REQ_CHAL; Q/R LSA_AUTH2; Q/R LSA_SAMLOGON; Q/R LSA_SAMLOGOFF.
the last (non-essential right now) bit is the LSA_SRV_PWSET.

the next stage is to do LSA_OPENPOLICY; add the pipe binds (missing right
now); then we can test against an NT Server.
-
Andrew Tridgell
57e0fac614 added -U option to nmblookup. This is similar to -B except that it
forces the client to send a unicast instead of a broadcast netbios
packet. This is useful for diagnostics.
-
Andrew Tridgell
944ecbcbd4 fix some casting errors in smbencrypt and some multiply-defined errors
in clientutil.c (Luke, you can't just copy a global variable
declaration from one file to another, you need to declare one of them
extern)
-
Andrew Tridgell
4bf5c03b18 The browse synchronisation code in nmbsync.c now uses the clientgen.c
code, which means we don't have to link with a fake getpass routine
and we don't have a whole pile of global variables that really have
nothing to do with nmbd and were there to keep the client code happy.

The code should function identically to what it did before (hopefully
it was correct)

The only thing that now uses the horrible clientutil.c code is
smbclient.
-
Samba Release Account
1b17455066 preparing for release of 1.9.18alpha5 -
Luke Leighton
afa790f14c updated to describe smbclient work recently done. -
Luke Leighton
48c4eec98d latest version -
Luke Leighton
2119624010 oops! -
Luke Leighton
f14c111835 added correct client-side credential generation / checking to the LSA SAM
Logon query.  i think i even got the client-side checking of the response
credentials right!
-
Luke Leighton
349677de3f got the SAM logon request generated, and received a SAM logon response back.
YEAH!

need to add:

	- client-side credential calculation
	- client-side parsing of the SAM logon response.
-
Luke Leighton
9eee8c2007 sam logon query creation functions. written twice because i deleted it. -
Luke Leighton
82436a3d99 Makefile :
adding bits for new nt domain code

byteorder.h :

	trying to get macros right, and not to crash on SUNOS5...

client.c :

	added #ifdef NTDOMAIN, and created do_nt_login() function.  don't
	want to have to recompile client.c unless absolutely necessary.

credentials.c :

	moved deal_with_creds() [possibly inappropriately] into credentials.c

ipc.c reply.c server.c uid.c :

	attempting to make (un)become_root() functions calleable from smbclient.
	this is a little tricky: smbclient might have to be another setuid
	root program, immediately setuid'ing to non-root, so that we can
	reset-uid to root to get at the smbpasswd file.  or, have a secure
	pipe mechanism to smbd to grab smbpasswd entries.  or the like.

smbdes.c smbencrypt.c :

	created a function to generate lm and nt owf hashes.

lsaparse.c ntclient.c smbparse.c :

	added nt client LSA_AUTH2 code.  it works, too!

pipenetlog.c pipentlsa.c pipesrvsvc.c :

	simplification.  code-shuffling.  getting that damn offset right
	for the opcode in RPC_HDR.

smb.h :

	changed dcinfo xxx_creds to DOM_CRED structures instead of DOM_CHAL.
	we might need to store the server times as well.

proto.h :

	the usual.
-
Herb Lewis
f492bd51a6 update SGI build files to latest source -
Samba Release Account
bf5b060bd9 preparing for release of 1.9.18alpha4 -
Samba Release Account
e24465890a preparing for release of samba-1.9.18alpha4 -
Luke Leighton
814543b36e updated to reflect the current state of play:
- jeremy's nmbd restructure (wins client / wins server stuff)
	- which parameters are documented in smb.conf and which aren't
	- mentioning the new smbclient work-in-progress
-
Luke Leighton
5b15b17fc6 default server_name if NIS server is unavailable should be the local
machine, not a NULL string.
-
Luke Leighton
6d301d2cfd nmblib.c :
adding some debug info

pipenetlog.c pipentlsa.c pipesrvsvc.c :

	using unistrn2 instead of unistr2 in the SAM logon username.
	wrong offset for command in request (use "reserved" field
	not cancel_count.  AGH i'll get there)
-
Luke Leighton
39cec7f698 nterr.c :
added a structure that wraps nt errors as strings and enums, so we
	can do a smb_nt_error() function.

Makefile ntclient.c :

	added ntclient.c, broken out nt domain stuff into a separate file.
	getting fed up of compile-times and size of client.c.

	fixed the do_lsa_req_chal() function.  made it read the response,
	and return the challenge credentials received from the server.

	next stop: do_lsa_auth_2().

client.c :

	removed nt domain logon functions into a separate file.

pipenetlog.c pipentlsa.c pipesrvsvc.c smbparse.c :

	i'd broken the offsets of the RPC_HDR while trying to sort out the
	nt client code.  fixed it again.  added some robustness stuff.

util.c :

	the unistrn2() function was null-terminating the string at one
	character too many.
-
Jeremy Allison
2c97b33fc0 Big change to make nmbd code more readable/understandable.
Main change is removal of find_name_search() confusion.
This has been replaced with find_name_on_subnet() which
makes it explicit what is being searched.

Also changed wins_subnet to be wins_client_subnet in
preparation for splitting the wins subnet into client
and server pieces.

This is a big nmbd change and I'd appreciate any
bug reports.

Specific changes follow :

asyncdns.c:
     Removed wins entry from add_netbios_entry(). This is now
     explicit in the subnet_record parameter.

interface.c:
     iface_bcast(), iface_nmask(), iface_ip() return the
     default interface if none can be found. Made this
     behavior explicit - some code in nmbd incorrectly
     depended upon this (reply_name_status() for instance).

nameannounce.c:
     find_name_search changes to find_name_on_subnet.

namebrowse.c:
     wins_subnet renamed to wins_client_subnet.

namedbname.c:
     find_name_search removed. find_name_on_subnet added.
     add_netbios_entry - wins parameter removed.

namedbsubnet.c:
     find_req_subnet removed - not explicit enough.

nameelect.c:
     wins_subnet renamed to wins_client_subnet.

namepacket.c:
     listening() simplified.

nameresp.c:
     wins_subnet renamed to wins_client_subnet.

nameserv.c:
     find_name_search moved to find_name_on_subnet.

nameserv.h:
     FIND_XXX  -> changed to FIND_SELF_NAME, FIND_ANY_NAME.

nameservreply.c:
     find_name_search moved to find_name_on_subnet.
     Debug entries changed.

nameservresp.c:
     wins_subnet renamed to wins_client_subnet.

namework.c:
     wins_subnet renamed to wins_client_subnet.

nmbd.c:
     wins parameter removed from add_netbios_entry.

nmbsync:
     wins_subnet renamed to wins_client_subnet.

proto.h: The usual.

server.c:
     remove accepted fd from fd_set.

Jeremy (jallison@whistle.com)
-
Luke Leighton
25560cf40b renamed static cli_setup_pkt() to static cli_setup_packet() because it
clashed with the currently-used cli_setup_pkt() in clientutil.c
-
Luke Leighton
0ca7a64515 commas in the wrong places... -
Luke Leighton
d8c265c515 missed nmbsync.c when adding setup count and setup pointer arguments to
cli_call_api().  sorting this for jeremy.

there is a discrepancy between the client.c list_servers() and the nmbsync.c
add_info() calls to cli_call_api() - one has an mdrcount of 1024, the other
of zero.

i don't know what difference this makes.
-
Luke Leighton
0cc8ce43e1 general sorting out, from crashes generated by do_lsa_req_chal() in client.c
trying to set up the data parameters etc and not understanding what's going on.

in api_netlogTNP, added smb_io_rpc_hdr() call to decode the header received
(and in this instance, generated by do_lsa_req_chal()).  and then noticed
that it's two bytes out.  but i don't know how to do "byte parameters"
and it's not the same format as the LSA_REQCHAL received from nt workstations.

agh!
-
Luke Leighton
c100b39be9 missed one of the files (lsarpc) in the touch and chmod instructions. -