summaryrefslogtreecommitdiff
path: root/source3/nmbd
AgeCommit message (Collapse)AuthorFilesLines
2001-07-30Fixes for varargs problems with std c.Jeremy Allison4-13/+13
Fix from Rick Lake <rwlake@anp.nl> for QNX. Jeremy. (This used to be commit c13b77eb35fe51403a51e1a146cedc643e550de7)
2001-07-17Fixes from Jens-Uwe.Walther@force.de to make the -l option behaveJeremy Allison1-1/+1
consistently. Jeremy. (This used to be commit f591ca9f25c54d3cdd0b76df472411e44c95ea47)
2001-07-10Andrew B and I were commiting the same fix at the same time in differentChristopher R. Hertel1-4/+1
trees. This change simply brings HEAD and 2.2 in line with one another. Otherwise the code would be differnt but the meaning would be the same, which is awkward. Chris 'fifty-seven commits per line changed' Hertel -)----- (This used to be commit bbf14e2d4e054e2af4f9cbbb05b86f6ac41084c6)
2001-07-10Fix tree breakage, the last change was entirly non-portable, and we alreadyAndrew Bartlett1-1/+3
have this nice variable to do exactly this... (This used to be commit cad6f53433a9345c06ae94c5ef63434e72a2daea)
2001-07-10Fix from John Malmberg. When I added the additional information to theChristopher R. Hertel1-0/+3
debug block that reports multiple query responses I did not notice that the local answer_ip variable was only selectively set. Chris -)----- (This used to be commit 22ea0770d87b2faece2e5dfc098ccf27f4da155f)
2001-07-04strchr and strrchr are macros when compiling with optimisation in gcc, so we ↵Andrew Tridgell3-8/+8
can't redefine them. damn. (This used to be commit c41fc06376d1a2b83690612304e85010b5e5f3cf)
2001-07-04The big character set handling changeover!Andrew Tridgell4-23/+11
This commit gets rid of all our old codepage handling and replaces it with iconv. All internal strings in Samba are now in "unix" charset, which may be multi-byte. See internals.doc and my posting to samba-technical for a more complete explanation. (This used to be commit debb471267960e56005a741817ebd227ecfc512a)
2001-07-03- sorry, forgot to test a pointerSimo Sorce1-21/+26
(This used to be commit 1aef52245229741bc24c3e8147fa86eaa20fe9b2)
2001-07-01"netbios aliases" and "interfaces" options change from P_STRING to P_LISTSimo Sorce1-13/+15
(This used to be commit db36ed1d80fcbee16d0a0b5f226e56961f3bf1ec)
2001-06-28Added info to some of the debug messages to get a better handle on a problemChristopher R. Hertel1-24/+56
people are reporting regarding multiple responses to queries on <1D> names. There should only ever be one LMB but some users are seeing multiple replies to queries for the LMB name. This is probably due to nodes on the LAN that have NetBIOS over NetBEUI and/or IPX enabled. Previously, the debug message did not include the IP address associated with the name. It *did* include the source address of the packet, but in the examples I've seen all of these were the same, eg: [2000/06/22 11:58:25, 0] nmbd/nmbd_namequery.c:query_name_response(93) query_name_response: Multiple (2) responses received for a query on subnet 129.130.10.136 for name NT.CIS.KSU.EDU<1d>. This response was from IP 129.130.10.24 [2000/06/22 11:58:25, 0] nmbd/nmbd_namequery.c:query_name_response(93) query_name_response: Multiple (3) responses received for a query on subnet 129.130.10.136 for name NT.CIS.KSU.EDU<1d>. This response was from IP 129.130.10.24 [2000/06/22 11:58:25, 0] nmbd/nmbd_namequery.c:query_name_response(93) query_name_response: Multiple (4) responses received for a query on subnet 129.130.10.136 for name NT.CIS.KSU.EDU<1d>. This response was from IP 129.130.10.24 [2000/06/22 11:58:25, 0] nmbd/nmbd_namequery.c:query_name_response(93) query_name_response: Multiple (5) responses received for a query on subnet 129.130.10.136 for name NT.CIS.KSU.EDU<1d>. This response was from IP 129.130.10.24 Note that all of the above are reported as having come from 129.130.10.24. This should never happen. If 129.130.10.24 is a WINS server it should send a Negative Name Query Response for a <1D> name query (wierd but true). So, are all of the above coming from different systems, all of which think are the LMB? Are they all coming from one system that is, for some strange reason, replying five times to the same query? Anyway, I needed more info so I've changed the debug messages. Chris -)----- (This used to be commit 8f2f09af0a0a80cacef933ed500884e2c0b3f2fb)
2001-06-25fixed usage of socklen_t and also tidied up SIG_ATOMIC_T, using a typedef ↵Andrew Tridgell1-1/+1
instead of a define (This used to be commit e2ecff419fdc0a0dc7551b33b377dc11061ef2a3)
2001-04-27Mismatched format and args.Jeremy Allison1-1/+1
Jeremy. (This used to be commit d57feb2c85f973ad22098054b8d6d049869e2a69)
2001-04-25More paranioa fixes against nmbd lengths.Jeremy Allison1-7/+7
Jeremy. (This used to be commit 53f35a71c6fc46814eca914573506622d7db4e08)
2001-04-24Fix bad length in dgram.Jeremy Allison1-0/+7
Jeremy. (This used to be commit 8bd27845f0d8b19409ba79c028ce54732d7276e1)
2001-04-24Patch for nmbd core dump in printing debug packets. No length check.Jeremy Allison1-3/+5
Jeremy. (This used to be commit eacb96396d57d6b622b750d64b3686e6fbeaf68c)
2001-04-13Merge of Andrew's changes in 2.2.Jeremy Allison1-1/+1
Jeremy. (This used to be commit fc76681812b1469208ad6c8847afdfc68bc6db49)
2001-04-13As Andrew suggested, make smbrun return a fd for a deleted file which can thenJeremy Allison1-1/+1
be read. Jeremy. (This used to be commit e7d59d6de89a5fdd201e4b5c6072dab08b1519db)
2001-04-08Got "medieval on our ass" about adding the -1 to slprintf.Jeremy Allison2-5/+5
Jeremy. (This used to be commit 94747b4639ed9b19f7d0fb896e43aa392a84989a)
2001-03-23Fix insure-found parameter size missmatch.Jeremy Allison1-2/+2
Jeremy. (This used to be commit 2f658691e47406f38bec2fc20951f82043fbf894)
2001-03-21added option "enhanced browsing"Andrew Tridgell1-2/+6
this allows users to disable the cross-subnet browse extensions that I added to Samba a couple of years ago. This may be useful for getting rid of empty workgroups. (This used to be commit 978980050e599d3830d0474bc9a8003bfe227719)
2001-03-15AS/U on a sparc now joins and authenticates against a Samba PDC !Jeremy Allison1-1/+1
Jeremy. (This used to be commit 28a0bc5f5710aa732db662caa38f9da2138b5db2)
2001-03-08Fixed double fclose() call (I love insure :-).Jeremy Allison1-2/+0
Jeremy. (This used to be commit 0a84839dc046c17375daea4ed18ef118887ef421)
2001-02-15samba/source/nmbd/nmbd.c change remote_machine name to nmbd insteadHerb Lewis1-1/+1
of nmb so we write to same log file that was originally created as log.nmbd samba/source/smbd/server.c change remote_machine name to smbd instead of smb so we write to same log file that was originally created as log.smbd samba/source/lib/interface.c allow binding to all interface IP addresses even if on same subnet. This allows you to specify which IP's you want in interfaces line and use bind interfaces only (This used to be commit 01dfd59712f3730498784d7632da8fe0113d55b6)
2001-01-25Changes from APPLIANCE_HEAD:David O'Neill1-0/+6
source/smbd/server.c source/nmbd/nmbd.c - Fixed a very subtle bug with signals. Seems that POSIX requires that the signal mask be inhereted. So, if you happen to kick off smbd/nmbd from code that has the mask set on SIGUSR1, you lose messages. (This used to be commit b4c98196fc65e8b3bce928296e854987622eae78)
2001-01-04I need a callback arg for cli_NetServerEnum and cli_RNetShareEnum, so I hadRichard Sharpe1-4/+5
to modifiy any routine that calls it to pass NULL and so forth. Should have no impact. It compiles OK. (This used to be commit 7f862e387f935a2125481338eee850afcb8d82ba)
2001-01-03We only want to mark mailslot packets as loopback packets if they are toRichard Sharpe1-1/+1
the DGRAM_PORT, since we want to actually send those to other ports. They might be for the client library running on the Samba server! (This used to be commit 05e2dd5e85d4aca1ccb9f6991e1415f85cbbdc1a)
2001-01-02Make the use of generate_name_trn_id conform to the usage elsewhere ...Richard Sharpe1-1/+1
(This used to be commit 46a3a56ecf411eb885aee2892e12d3846ce32ad6)
2001-01-02Comment out unused generate_name_trn_id ...Richard Sharpe1-1/+1
(This used to be commit fb5798e1d9eb518f85e30680883c0460141b245d)
2000-11-17John Reillys fix for de-registering broadcast names (NT doesn't do this).Jeremy Allison1-0/+4
Jeremy. (This used to be commit 245907f2affb530237809b81b8748f7f0a1e4502)
2000-10-12Ignore SIGUSR2. Terminate nmbd if we have no interfaces.Jeremy Allison1-5/+19
Jeremy. (This used to be commit 580e2e044cfd1d011d9f28f0f49ef60ca6ba8d32)
2000-10-07Ensure browse.dat is written and read in UNIX character set format.Jeremy Allison1-3/+13
Jeremy. (This used to be commit 279d0ec656b03f9266e38b013f16b69e7571c0d5)
2000-09-12- changed the msg_type to be an int instead of an enum so that it isAndrew Tridgell3-14/+25
easier to add new message types to messages.h without breaking old binaries - added a MSG_FORCE_ELECTION message to force nmbd to hold an election (This used to be commit f1c49ca7ce56bc39259041a71479e84ebf53eeca)
2000-09-11debug messages now work for nmbdAndrew Tridgell2-82/+79
(This used to be commit 6a503f95b10f6661b089f30f2b5ffebead32685c)
2000-09-11the first cut of the internal messaging system.Andrew Tridgell2-31/+0
The motivation for this system is to replace the UDP message for oplocks, but this commit only does the "set debug level" message. (This used to be commit 2a34ee95f3929cff131db6c5a2b4820194c05b2d)
2000-08-30Fix for bind interfaces only sometimes picking the wrong IP addressJeremy Allison1-2/+24
for a name query. From Steve Langasek <vorlon@netexpress.net>. Jeremy. (This used to be commit 9890740121ae7bd7a0196bbf946c6f8c82aa7f6e)
2000-07-19Instead of handing back a string (which might be a DNS name or an IPChristopher R. Hertel1-8/+9
string), the wins_srv module now hands back a struct in_addr when it's called. It caches the IP address once it has been looked up. The IP is cleared (and must be looked up again) if the 'wins server' parameter is reread, or if the node is marked 'dead'. A dead node will not be re-tried for 10 minutes (per a #define in wins_srv.c). As it was, the code was reading the WINS server name or IP directly from lp_wins_server. That's okay, except that if the value was expressed as a name, then a DNS lookup would be done every time the client wanted to talk to the server. I still need to work out the implications of failover regarding the 'unicast subnet' list. Chris -)----- (This used to be commit 73aa188320fd3bf10b5dfc057323f40aff2c13bd)
2000-07-19First cut toward adding WINS server failover.Christopher R. Hertel1-1/+5
*Note: failover doesn't actually work yet!* It's just that the code I'm adding provides all of the pieces necessary. I do have one big question. Something that I'll have to ask Jeremy, I'm thinkin'. In nmbd/nmbd_subnetdb.c the IP of the WINS server is used to set up the Unicast subnet. ...so what happens if the WINS server changes? My guess is either: a) nothing. b) I'd have to change the unicast subnet entry whenever the WINS server changes. Urq. BTW, the lp_wins_server() function no longer returns the WINS server name or IP. It returns the list of WINS servers entered in smb.conf. To get the currently 'live' WINS server, use the wins_srv() function. Fun, eh? Chris -)----- (This used to be commit cc08bdc74f4cd111fdc582ee7babef47ed8a950d)
2000-06-11Linux kernel oplocks now seem to work, but need a _lot_ of testingAndrew Tridgell1-1/+1
I had to modify sys_select() to not loop on EINTR. I added a wrapper called sys_select_intr() which gives the old behaviour. (This used to be commit b28cc4163bc2faaa80c5782fc02c8f03c410cdeb)
2000-05-10more mergingAndrew Tridgell1-2/+1
it is now at the stage that winbindd can compile in the head branch, but not link (This used to be commit d178c00aae77710ae6ff20a7f54a30e3bd8232bb)
2000-05-02Fixed wild pointer diff found by insure.Jeremy Allison1-1/+1
Jeremy. (This used to be commit 158d9cada8c12725981d495faf8ed9f5d4306e23)
2000-05-02Added sys_fork() and sys_getpid() functions to stop the overheadJeremy Allison5-6/+6
of doing a system call every time we want to just get our pid. Jeremy. (This used to be commit 148628b616b5c29ba6340d65fc3ddbcabba6e67a)
2000-04-25don't qsort a list less than 2 entriesAndrew Tridgell1-1/+3
(This used to be commit 6faa3c23ae6d8aab52f8d6689e04bde9b3029804)
2000-04-24fixed a parameter bug found by insureAndrew Tridgell1-1/+1
(This used to be commit a559a8066fb162c4da0a5046c49a105eabf131d9)
2000-04-22This is a *big* checkin that may break some things, but implements theJeremy Allison1-3/+8
new open mechanism Andrew & I discussed. config.sub: configure: Included the QNX patch. include/vfs.h: smbd/vfs-wrap.c: smbd/vfs.c: Added ftruncate vfs call (needed). Note that we will also need locking calls in the vfs (to be added). lib/util_unistr.c: nmbd/nmbd_processlogon.c: Fix for NT domain logons causing nmbd to core dump. Also fix for sidsize DOS bug. locking/locking.c: Check value of ret before using it for memdup. printing/printing.c: Convert print_fsp_open to return an allocated fsp. rpc_server/srv_lsa.c: Fix for NT domain logons. I have removed all use of lp_share_modes() from the code (although I left the parameter in the table for backwards compatibility). It no longer makes sense for this to exist. smbd/close.c: Removed lp_share_modes(). smbd/fileio.c: Fixed parameters to unlock_share_entry call in panic code. smbd/files.c: Correctly set the unix_ERR_code to ERRnofids on fsp allocation fail. smbd/nttrans.c: smbd/reply.c: smbd/trans2.c: Changed all occurrences of open_file_shared/open_directory/ open_file_stat to return an fsp from the call. smbd/open.c: Changed all occurrences of open_file_shared/open_directory/ open_file_stat to return an fsp from the call. In addition I have fixed a long standing race condition in the deny mode processing w.r.t. two smbd's creating a file. Andrew, please note that your original idea of using open with O_EXCL in this case would not work (I went over the races very carefully) and so we must re-check deny modes *after* the open() call returns. This is because there is a race between the open with O_EXCL and the lock of the share mode entry. Imagine the case where the first smbd does the open with O_EXCL and a deny mode of DENY_ALL, but is pre-empted before it locks the share modes and creates the deny mode entry for DENY_ALL. A second smbd could then come in with O_RDONLY and a deny mode of DENY_NONE and the two opens would be allowed. The *only* way to fix this race is to lock the share modes after the open and then do the deny mode checks *after* this lock in the case where the file did not originally exist. This code will need extensive testing but seems to initially work. Jeremy. (This used to be commit ab0ecc39d688f16b9692fe90b991f0b89287070a)
2000-04-18updates from the TNG branchAndrew Tridgell1-10/+6
(This used to be commit 36fb5bc72fc6c0de719205ea34f497bfa0c4082f)
2000-04-12logic for domainsidsize is if size is zero, there's no sid, so don'tLuke Leighton1-1/+0
advance over it and 4-byte align. this _used_ to be "regardless of domainsidsize, advance by domainsidsize+3" which is wrong. (This used to be commit 5086e6425f3630d8f5ca1e25a333eb97fdf86e93)
2000-04-11include/byteorder.h: ALIGN4/ALIGN2 macros.Jeremy Allison1-3/+3
include/includes.h: Added SMB_BIG_UINT_BITS. lib/util.c: Removed align2/align4 - use macros. libsmb/namequery.c: Use ALIGN2. locking/locking.c: Replace do_lock, do_unlock, args with SMB_BIG_UINT, not SMB_OFF_T. Needed to move to hiding POSIX locks at a lower layer. nmbd/nmbd_processlogon.c: Use ALIGN2/ALIGN4 macros. smbd/blocking.c: Replace do_lock, do_unlock, args with SMB_BIG_UINT, not SMB_OFF_T. smbd/reply.c: Replace do_lock, do_unlock, args with SMB_BIG_UINT, not SMB_OFF_T. Jeremy. (This used to be commit 491eea8a20bf80d426625479326211dc975857a6)
2000-04-11add a commentAndrew Tridgell1-1/+1
(This used to be commit 0da440c8fe365fd53c313e9dc62dda7e40916d62)
2000-04-11some updates to the process logon code to reflect lukes latestAndrew Tridgell1-20/+38
research plus some cleanups (This used to be commit 1682faa1b0e95fc5acdf9b10da80a6515f8772cd)
2000-04-11finally got sick of the "extern int Client" code and the stupidAndrew Tridgell1-1/+0
assumption that we have one socket everywhere while doing so I discovered a few bugs! 1) the clientgen session retarget code if used from smbd or nmbd would cause a crash as it called close_sockets() which closed our main socket! fixed by removing close_sockets() completely - it is unnecessary 2) the caching in client_addr() and client_name() was bogus - it could easily get fooled and give the wrong result. fixed. 3) the retarget could could recurse, allowing an easy denial of service attack on nmbd. fixed. (This used to be commit 5937ab14d222696e40a3fc6f0e6a536f2d7305d3)