summaryrefslogtreecommitdiff
path: root/source3/libsmb
AgeCommit message (Collapse)AuthorFilesLines
2002-08-22fix a few segfaultsGerald Carter1-1/+1
(This used to be commit ccb02f7cfcec4a555cf7304816c739f4bf7b46f0)
2002-08-22A few fixes towards libsmbclient and rpcclient - get pointer types right andAndrew Bartlett1-5/+3
try to keep to functions inside libsmbclient. Andrew Bartlett (This used to be commit 340bc31fdb031d79fa87de27c2c46215dd8113a3)
2002-08-21fix segfaultGerald Carter1-5/+5
(This used to be commit 982eadf73bb3932ec3ac89c6112a8bf79dbec127)
2002-08-21Patch from Paul Green <Paul.Green@stratus.com> to be more POSIX-compatibleJelmer Vernooij1-1/+1
(This used to be commit addf29e6765393b25c35bd833d29e29e4581c233)
2002-08-20cannot use casts in the DLIST_xxx macrosHerb Lewis1-2/+2
(This used to be commit c9ffc416aeee2610fdc896a9d41dac182039a5f9)
2002-08-20fix irix compiler errorHerb Lewis1-1/+1
(This used to be commit 4df7983487545a432cfa8832eae1afbdf7866060)
2002-08-19fixed memory corruption in cli_full_connection()Andrew Tridgell1-2/+1
(This used to be commit 7c2167182becbf72ba062230e911d55d337a4709)
2002-08-19we now receive and parse the main cldap netlogon reply.Andrew Tridgell1-5/+2
we still need to parse the core of the structure (This used to be commit 6780ae25bf7ca291f612682dec7ee7ff44c24bef)
2002-08-19added a 'net ads lookup' command that does a CLDAP NetLogon query to aAndrew Tridgell1-0/+10
win2000 server. It does seem to work, and win200 sends us a valid reply, but we don't parse it yet. Maybe tomorrow :) (This used to be commit 6352508c54cee333ed7c0e3ebc372be7cd60ed62)
2002-08-16Merge of netbios namecache code from APPLIANCE_HEAD.Tim Potter2-4/+276
Tridge suggested a generic caching mechanism for Samba to avoid the proliferation of little cache files hanging around limpet like in the locks directory. Someone should probably implement this at some stage. (This used to be commit dad31483b3bd1790356ef1e40ac62624a403bce8)
2002-08-15Fix NTLMSSP challenge command and auth response. We can now service joinsJim McDonough1-0/+61
from win2k AND still use SPNEGO (provided you don't build with kerberos...I still have to fix that, as we are not properly falling back). (This used to be commit 1f9b3d46c7c99e84b2983220f79613b7420c5ced)
2002-08-05This fixes a number of ADS problems, particularly with netbioslessAndrew Tridgell1-1/+1
setups. - split up the ads structure into logical pieces. This makes it much easier to keep things like the authentication realm and the server realm separate (they can be different). - allow ads callers to specify that no sasl bind should be performed (used by "net ads info" for example) - fix an error with handing ADS_ERROR_SYSTEM() when errno is 0 - completely rewrote the code for finding the LDAP server. Now try DNS methods first, and try all DNS servers returned from the SRV DNS query, sorted by closeness to our interfaces (using the same sort code as we use in replies from WINS servers). This allows us to cope with ADS DCs that are down, and ensures we don't pick one that is on the other side of the country unless absolutely necessary. - recognise dnsRecords as binary when displaying them - cope with the realm not being configured in smb.conf (work it out from the LDAP server) - look at the trustDirection when looking up trusted domains and don't include trusts that trust our domains but we don't trust theirs. - use LDAP to query the alternate (netbios) name for a realm, and make sure that both and long and short forms of the name are accepted by winbindd. Use the short form by default for listing users/groups. - rescan the list of trusted domains every 5 minutes in case new trust relationships are added while winbindd is running - include transient trust relationships (ie. C trusts B, B trusts A, so C trusts A) in winbindd. - don't do a gratuituous node status lookup when finding an ADS DC (we don't need it and it could fail) - remove unused sid_to_distinguished_name function - make sure we find the allternate name of our primary domain when operating with a netbiosless ADS DC (using LDAP to do the lookup) - fixed the rpc trusted domain enumeration to support up to approx 2000 trusted domains (the old limit was 3) - use the IP for the remote_machine (%m) macro when the client doesn't supply us with a name via a netbios session request (eg. port 445) - if the client uses SPNEGO then use the machine name from the SPNEGO auth packet for remote_machine (%m) macro - add new 'net ads workgroup' command to find the netbios workgroup name for a realm (This used to be commit e358d7b24c86a46d8c361b9e32a25d4f71a6dc00)
2002-08-03fixed a bug where we were truncating the returned names in a netbiosAndrew Tridgell1-1/+1
name status query to 14 bytes, so we could not join a DC who had a netbios name of 15 bytes in length. (This used to be commit a7588f21c24dac833f098c48e2337c100cf75ba4)
2002-08-02Moved rpc client routines from libsmb back to rpc_client where they belong.Tim Potter9-6501/+0
(This used to be commit cb946b5dadf3cfd21bf584437c6a8e9425f6d5a7)
2002-07-31added 'disable netbios = yes/no' option, default is noAndrew Tridgell1-2/+31
When this option is disabled we should not do *any* netbios operations. You should also not start nmbd at all. I have put initial checks in at the major points we do netbios operations in smbd but there are bound to be more needed. Right now I've disabled all netbios name queries, all WINS lookups and node status queries in smbd and winbindd. I've been testing this option and the most noticable thing is how much more responsive things are! wthout those damn netbios timeouts things certainly are much slicker. (This used to be commit 12e7953bf2497eeb7c0bc6585d9fe58b3aabc240)
2002-07-30this fixes plaintext passwords with win2000Andrew Tridgell1-3/+2
there were 2 bugs: 1) we were sending a null challenge when we should have sent an empty challenge 2) the password can be in unicode if unicode is negotiated. This means our client code was wrong too :( (This used to be commit 1a6dfddf6788b30fc81794b1bfe749693183b2c1)
2002-07-30Some crash fixes for netshareenum returning zero shares.Tim Potter1-0/+3
(This used to be commit a5a0ff8bd7ee4a3586647d14fd750ec6df73efa8)
2002-07-27Rafal 'Mimir' Szczesniak <mimir@diament.ists.pwr.wroc.pl> has been busyAndrew Bartlett2-4/+115
again, and has added 'net rpc trustdom list' support. This lists the trusted and trusting domains of a remote PDC. I've applied these almost directly, just fixing some special case code for when there are *no* trusting domains. We still have some parse errors in this case however. Andrew Bartlett. From mimir's e-mail: Here are another patches adding trust relationship features. More details: Better error reporting in cli_lsa_enum_trust_dom(). Implementation of cli_samr_enum_dom_users() which cli_samr.c lacked. More "consts" -- one of arguments in net_find_dc(). Modified implementation of run_rpc_command() -- now it allows to reuse already opened connection (if it is passed) to remote server's IPC$ (e.g. as part of longer exchange of rpc calls). I'm sure Andrew will argue ;-) More neat version of rpc_trustdom_list() function. (This used to be commit f0890026820ee3e432147130b46de4610e583381)
2002-07-26Mimir has been busy with patches again, and sent in the followingAndrew Bartlett1-3/+2
patches: Andrew Bartlett From his e-mail: Below I attach the following patches as a result of my work on trusted domains support: 1) srv_samr_nt.c.diff This fixes a bug which caused to return null string as the first entry of enumerated accounts list (no matter what entry, it was always null string and rid) and possibly spoiled further names, depeding on their length. I found that while testing my 'net rpc trustdom list' against nt servers and samba server. 2) libsmb.diff Now, fallback to anonymous connection works correctly. 3) smbpasswd.c.diff Just a little fix which actually allows one to create a trusting domain account using smbpasswd 4) typos.diff As the name suggests, it's just a few typos fix :) (This used to be commit 888d595fab4f6b28318b743f47378cb7ca35d479)
2002-07-22fixed a segv in net time when the host is unavailableAndrew Tridgell1-1/+1
(This used to be commit f4f2b613a2a804a6d2e5e78cc7dd7f3482675fcd)
2002-07-21Renamed all the new_cli_netlogon_* functions to cli_netlogon_*Tim Potter2-16/+16
as they're no longer new! (This used to be commit 277f6bbb9a63541a473a80a7994e9bde5c6f22dc)
2002-07-20Try to fix up warnings - particularly on the IRIX 64 bit compiler (which had aAndrew Bartlett4-12/+24
distinction between uchar and char). Lots of const etc. Andrew Bartlett (This used to be commit 8196ee908e10db2119e480fe1b0a71b31a16febc)
2002-07-20Fix up char/uchar casts etc. Fix up comments on some of the password hashAndrew Bartlett2-12/+9
wrappers. Andrew Bartlett (This used to be commit 95519d408caa7da00dbb2a8323cc4374a517cd69)
2002-07-20Add support for a weird behaviour apparently used by Win9X pass-throughAndrew Bartlett1-2/+2
authentication - we can have an NT hash in the LM hash feild. (I need to double-check this fix with tpot, who discovered it). Also remove silly casts back and forth between uchar and char. Andrew Bartlett (This used to be commit 07e2b36311f91d7a20865a2ccc94716772e53fd7)
2002-07-15fixed a number of real bugs found by warnings on the 64 bit irix compilerAndrew Tridgell1-2/+1
(This used to be commit 04de6bbc8055e5547af41b10e284b722f40e726d)
2002-07-15checking for NULL really is counter-productive, and this one was alsoAndrew Tridgell1-5/+0
generating a warning (This used to be commit cd82ba41b8df024f034fcfa24e967ed8c3c8d035)
2002-07-13fix directory listing on win9x.Andrew Tridgell1-3/+7
it turns out this is tricky to get right for both win9x and w2k with and without unicode. This patch seems to do the trick. (This used to be commit 01ebe5fff2b3cb29f083afb224b1257364ac5d80)
2002-07-13Some fix ups but committing so Andrew can look at the problem I have.Richard Sharpe1-7/+1
(This used to be commit 146ba3eb49bade732d57691d8ce181ef6608e0cb)
2002-07-13Fix up the include file that had problems as well.Richard Sharpe1-11/+0
(This used to be commit 753df0b89767261420f242da21d5dfb5403c966b)
2002-07-13Add these two files I forgot.Richard Sharpe2-0/+476
(This used to be commit 5706e6af168b14a40cb1e306c2911182260ff0d3)
2002-07-13Fix some multibyte problems that I forgot about.Richard Sharpe1-6/+6
(This used to be commit 481a70f4f005a778a24e2193f8e760217ee3c946)
2002-07-11Commit Tom Jansen's changes to head.Richard Sharpe1-819/+899
(This used to be commit d3fdce07ab5955abd1f923127ae9eb5006aea505)
2002-07-09fix declaration of global_in_nmbdAndrew Tridgell1-1/+1
(This used to be commit 07de8418369dad1f015369e70e9303fea4130295)
2002-07-04Fixed incorrect debug.Tim Potter1-1/+1
(This used to be commit dd46ff7619129782963ec6ea727e5d731370ee7d)
2002-07-03Make these functions static. These are not mentioned in the external header,Andrew Bartlett1-4/+4
and appear to be functions for internal use. Richard: please check. Andrew Bartlett (This used to be commit cb61e61a113dede4a0b0f5d31d0ec89c4b6ecd65)
2002-07-03Add my copyright (which I should have added months ago...)Andrew Bartlett1-0/+1
(This used to be commit 2d7eccbeb258b4fdd14323a40f9537eb265f73e1)
2002-07-01used findstatic.pl to make some variables static and remove some deadAndrew Tridgell1-99/+0
code (This used to be commit 91ad9041e9507d36eb3f40c23c5d4df61f139ef0)
2002-07-01bias the lookup sorting towards directly reachable IPsAndrew Tridgell1-0/+8
(This used to be commit 514b91827a970a0041314af341b8c66a01668e4a)
2002-07-01sort name query responses by how far they are from our interfaceAndrew Tridgell2-2/+43
broadcast addresses. This makes it far more likely that we will try to talk to an interface that is routable from one of our interfaces. (This used to be commit bc1a0506868266088ae585a7a5dcb1ac8ca3474d)
2002-07-01The 17-bit length field in the header contains the number ofChristopher R. Hertel1-1/+8
bytes which follow the header, not the full packet size. [Yes, the length field is either 17-bits, or (per the RFCs) it is a 16-bit length field preceeded by an 8-bit flags field of which only the low-order bit may be used. If that bit is set, then add 65536 to the 16-bit length field. (In other words, it's a 17-bit unsigned length field.) ...unless, of course, the transport is native TCP [port 445] in which case the length field *might* be 24-bits wide.] Anyway, the change is a very minor one. We were including the four bytes of the header in the length count and, as a result, sending four bytes of garbage at the end of the SESSION REQUEST packet. Small fix in function cli_session_request(). (This used to be commit cd2b1357066a712efcf87ac61922ef871118e8de)
2002-06-28make net join a bit less verboseAndrew Tridgell2-2/+2
these errors happen all the time, so they shouldn't be level 0 (This used to be commit abc2aed26c6cb12a86987a3846ca5c9f7df9a5ae)
2002-06-28Proper merge of all the working printing stuff from APPLIANCE_HEAD.Jeremy Allison2-4/+227
Now let's keep this in sync ! Jeremy. (This used to be commit 3603cd4947df2c10df604447dc542932cb9e5d5a)
2002-06-27fixed a link problem with global_in_nmbdAndrew Tridgell1-1/+1
(This used to be commit 9a3e323ec261a1ee3a83f8c558583c3d4a53e06a)
2002-06-27The next phase in the WINS rewrite!Andrew Tridgell1-6/+10
We now cope wiith multiple WINS groups and multiple failover servers for release and refresh as well as registration. We also do the regitrations in the same fashion as W2K does, where we don't try to register the next IP in the list for a name until the WINS server has acked the previos IP. This prevents us flooding the WINS server and also seems to make for much more reliable multi-homed registration. I also changed the dead WINS server code to mark pairs of IPs dead, not individual IPs. The idea is that a WINS server might be dead from the point of view of one of our interfaces, but not another, so we need to keep talking to it on one while moving onto a failover WINS server on the other interface. This copes much better with partial LAN outages and weird routing tables. (This used to be commit 313f2c9ff7a513802e4f893324865e70912d419e)
2002-06-27Using 1 for a tdb hash size makes for slow inserts....Jeremy Allison1-1/+1
Jeremy. (This used to be commit d015c08100bf467e3f83143586a234989eca1a49)
2002-06-26resolve_wins() now needs to be a public functionAndrew Tridgell1-2/+2
(This used to be commit 0bce9af615db2eb7e95887ab6b95655d7771dac2)
2002-06-26This commit finally gives us multiple wins server groups. We nowAndrew Tridgell1-43/+68
accept an extended syntax for 'wins server' like this: wins server = group1:192.168.2.10 group2:192.168.3.99 group1:192.168.0.1 The tags before the IPs don't mean anything, they are just a way of grouping IPs together. If you use the old syntax (ie. no ':') then an implicit group name of '*' is used. In general I'd recommend people use interface names for the group names, but it doesn't matter much. When we register in nmbd we try to register all our IPs with each group of WINS servers. We keep trying until all of them are registered with every group, falling back to the failover WINS servers for each group as we go. When we do a WINS lookup we try each of the WINS servers for each group. If a WINS server for a group gives a negative answer then we give up on that group and move to the next group. If it times out then we move to the next failover wins server in the group. In either case, if a WINS server doesn't respond then we mark it dead for 10 minutes, to prevent lengthy waits for dead servers. (This used to be commit e125f06058b6b51382cf046b1dbb30728b8aeda5)
2002-06-26removed the wins name registration code from libsmbclientAndrew Tridgell2-229/+158
it is *completely* bogus for our client code to be doing wins registrations. Not only is it slow as hell (think about when a wins server is down) but how the heck is going to answer the queries that will later come in for our name? And what happens when libsmbclient sends registrations and nmbd then gets the WACK response from the wins server? we end up losing our name! Name registration is a job for nmbd, not for clients. (This used to be commit 62774923ffdce15eded0f37ba99e33e9cd7a358c)
2002-06-26- completely rewrote the wins_srv.c code. It is now much simpler, andAndrew Tridgell1-3/+3
gives us a good grounding to properly support multiple wins servers for different interfaces (which will be coming soon ...) - fixed our wins registration failover code to actually do failover! We were not trying to register with a secondary wins server at all when the primary was down. We now fallback correctly. - fixed the multi-homed name registration packets so that they work even in a non-connected network (ie. when one of our interfaces is not routable from the wins server. Yes, this really happens in the real world). (This used to be commit a049360d5b0d95a935b06aad43efc17d34de46dc)
2002-06-26reverted some bogus test code that jeremy accidentally committedAndrew Tridgell1-8/+0
(This used to be commit 6b28ca8bd2a6613989bb23be951836d173296197)