summaryrefslogtreecommitdiff
path: root/source3/smbd
AgeCommit message (Collapse)AuthorFilesLines
1996-10-25Changed become_user to take a vuid as second arg.Samba Release Account1-7/+7
Consistent with other changes to make smb_uid an index+offset into the validated_users table. jra@cygnus.com (This used to be commit 89675f8ae8f136fb587690b137f4413607d30c14)
1996-10-25Modified all references to smb_uid to be vuid's.Samba Release Account1-6/+7
jra@cygnus.com (This used to be commit 5056672a3ad579fa900411534d7548a6fabc729f)
1996-10-25Modified all references to uid to vuid.Samba Release Account1-26/+29
jra@cygnus.com (This used to be commit a2b07e5562dda87b42d9447c0b29a7815bd3178d)
1996-10-25Core of the changes for returning smb_uid's. smb_uid's are nowSamba Release Account1-60/+57
returned as an index plus offset into the valudated_users table. The offset (100) is added so that an smb_uid of zero becomes an invalid value. All access into the validated_users table are done by removing the offset and indexing into the table. Out of ranges return NULL. Causes accesses into the validated_users table to be more consistant and controlled. This change made due to the fact that the uid field is only 16 bits in the smb header and we need for this not to be a unix user id (which can ge 32 bits). jra@cygnus.com (This used to be commit ac265eff85a043e139b259e400fbbc444a94c97c)
1996-10-25Changed definitions of prototypes to take uint16 vuid's notSamba Release Account1-69/+69
int uid's. Part of the change for Samba to return an index+offset into the registered users table rather than a raw unix uid. Added casts to required prototypes for function pointers in tables. jra@cygnus.com (This used to be commit ec2a3a1cf2220f6aace004d1808352f8e62a5616)
1996-10-24- added support for TMPDIR env variableAndrew Tridgell2-2/+2
- fixed fault.c for linux 2.1 - put back in the FIND_SELF failing code - cleaned up casts in encryption (This used to be commit 3af04f1580b2569c0a4f2549bf6352c7a25afa0d)
1996-10-23Jeremy <jra@cygnus.com>Samba Release Account1-1/+1
Removed AS_USER requirement for SMBulogoff. A valid TID (cnum) is not given for this call, which become_user needs if it is not to return an error. This fixes a specific case with NT4.0 which stops users attaching to a Samba server using a different account to the one they are logged in under. (This used to be commit c65a2cdd830bcda396ad6a0bd51a9b80c9d26a67)
1996-10-09- correctly handle non-encrypted share mode session-setup. We wereAndrew Tridgell1-3/+7
losing the username due to the recent "handle broken password lengths" patch. (This used to be commit b006cd6f911c045488bcdab260b03fd98cb08145)
1996-10-07- revert to old idle dir code (marty pointed out a problem with theAndrew Tridgell3-5/+10
new code) - handle server level security in the new "detect NT password length stuffups" code (This used to be commit 7c135d499409d4ddedb978f681559dae90ac4288)
1996-10-07- continue when failing to load config file in nmblookup and smbclientAndrew Tridgell1-1/+1
- fix important bug in nmbd where it set the return code for a negative name response to 0 (which means success!) (This used to be commit bfa816cc8f30d9a629b4fe9f71bf0707aa6c4502)
1996-10-05- replace the base36 function with one that works on more systemsAndrew Tridgell3-15/+28
(compiler bugs were the problem) - minor password cleanups (catch WfWG bug where it sets the password to a space instead of a NULL) - fix printing problem for kanji users - minor cleanups (This used to be commit 92566ecc315c29da6e9aaa67ddae33e64f5bcc67)
1996-10-05I have fixed quite a few important bugs in this commit.Andrew Tridgell4-22/+47
Luke, can you take special note of the bug fixes to nmbd so you can propogate them to your new code. - rewrote the code that used to use fromhost(). We now call gethostbyaddr() only if necessary and a maximum of once per connection. Calling gethostbyaddr() causes problems on some systems so avoiding it if possible is a good thing :-) - added the "fake oplocks" option. See the docs in smb.conf(5) and Speed.txt - fixed a serious bug in nmbd where it would try a DNS lookup on FIND_SELF queries. This caused a lot of unnecessary (and incorrect) DNS lookups to happen. FIND_SELF queries should only go to the internal name tables. - don't set FIND_SELF for name queries if we are a wins proxy, as we are supposed to be answering queries for other hosts. - fixed a bug in nmbd which had "if (search | FIND_LOCAL)" instead of "if (search & FIND_LOCAL)". Luke, this was in nameservreply.c - the above 3 bugs together meant that DNS queries were being cached, but the cache wasn't being used, so every query was going to DNS, no wonder nmbd has been chewing so much CPU time! Another side effect was that queries on names in lmhosts weren't being answered for bcast queries with "wins proxy" set. - ignore the maxxmit for seconday session setups (see CIFS spec) - close user opened files in a uLogoffX for user level security (see CIFS spec) - added uid into the files struct to support the above change (This used to be commit ea472b7217b7693627a13a7b1e428a0a6a3d8755)
1996-10-05- use workgroup from smb.conf in smbclientAndrew Tridgell3-3/+9
- change debug level on clitar stuff - define MAP_FILE if not defined - ensure we never set authoritative on queries in nmbd - fake a positive response to SMBioctl, apparently this is needed for some WfWg printer drivers - deny file access for non-fcbopen queries when (access_allowed == AREAD && flags == O_RDWR) - add sys_waitpid() (This used to be commit 61e3116e573637d6b5a878eeb8db72831e3c5bd1)
1996-10-04- changed the umask handling. We now set the umask to 0 and explicitlyAndrew Tridgell3-40/+152
set the mode on all created files. I think this is a better policy. - change the debug levels on some items - fix a charset handling bug which affected foreign and extended charset users - no longer switch back to the original directory when idle, instead switch to / as the original directory may not be readable by ordinary users. - fix some bugs where the create mode of files was not being explicitly set (it was relying on the umask and using fopen). Not a big bug as it only affected obscure commands like the messaging ops. - got rid of the lock code in the lpq cache as its no longer needed - rewrote smbrun to be faster and to remove the security hole. We now don't actually need a external smbrun binary, its all done by smbd. - add a more explicit warning about uids and gids of -1 or 65535 (This used to be commit 5aa735c940ccdb6acae5f28449d484181c912e49)
1996-10-02- fix the EALREADY bug so connections to slow hosts with smbclient getAndrew Tridgell1-18/+23
through - add workarounds to handle the win95 and WinNT bugs in handling password lengths in sessionsetup (This used to be commit 671b3a3a770c824ae77fcb83dc551054a880edad)
1996-10-02backout all the changes to nmbd.Andrew Tridgell4-73/+15
The 1.9.16 tree is now back to 1.9.16p2 as far as nmbd is concerned apart from a small change that fixes the announce type in two places. (This used to be commit 45e66a69d320024877c8b13f12b21bf895e04410)
1996-10-02- a huge pile of changes from Luke which implement the browse.confAndrew Tridgell4-19/+77
stuff and also fix a pile of nmbd bugs. Unfortunately I found it very hard to disentangle the new features from the bug fixes so I am putting in the new code. I hope this is the last big pile of changes to the 1.9.16 series! (This used to be commit 20b6203dac4bbb43e4e7bea0b214496d76d679d9)
1996-10-02- accept either NT or lanman passwords in tconXAndrew Tridgell1-10/+9
(This used to be commit b6c1c60d72e1625ca172b8f8eb07078413611468)
1996-08-24added debug infoAndrew Tridgell1-1/+1
(This used to be commit 4a988021a2aceaa5fc0d4e5ba2802392a7141ad8)
1996-08-24removed all of lukes recent changes. I need to do a p2 release butSamba Release Account2-37/+3
can't test the multi group changes. I also found that some of lukes changes wiped out some recent bug fixes. Is your CVS tree ok luke? (This used to be commit 8b7fe224bce64803d55ae279fa61ef3ebbbb0241)
1996-08-24fixed dircahe bugSamba Release Account1-2/+2
(This used to be commit 050f941e21aeb57ab47ac9d29fb4acfceab45087)
1996-08-23- fixed bugs in nmb response packet checking.Samba Release Account2-3/+37
- added multiple workgroup code - samba can register under different (unique) NetBIOS aliases, one per workgroup it joins. lkcl (This used to be commit f24e341e7e4d8726b98d3a0f83b24f61817fe536)
1996-08-22- add timeouts to connect() for password server connections. ThisAndrew Tridgell1-1/+1
makes multiple password servers practical. (This used to be commit 5c3e8326cc45d3cbd076475e445ce461a2bf7560)
1996-08-21- fix a bug handling readraw packets that caused the timeout to be 30Andrew Tridgell2-2/+2
milliseconds instead of 30 seconds as was intended. Thanks to Paul Nelson for finding this bug. (This used to be commit 78f62c83be5df6b66aa0b5e83b2d290f97ce53c2)
1996-08-21handle sigpipe better for server securityAndrew Tridgell1-0/+14
(This used to be commit d87fdb3ee95b6640d5deef823f22e8d98350ca33)
1996-08-21JHT ==> Upgraded Samba to Windows NT Server version 4.1Samba Release Account1-1/+1
Just to keep ahead of the pack. Note: Really only done to differntiate our version ID from existing SMB Servers. (This used to be commit 6636c7b5b8e8a4ccf7f39450011ed864049a7cd1)
1996-08-21- new handling of ST_TYPE bits, they are now consolidated much more inAndrew Tridgell1-2/+1
DFLT_SERVER_TYPE in nameserv.h - got rid of a lot of spurious domain controller stuff. Samba is not a domain controller yet, but it can be a domain master. We were claiming to be a domain controller in some packets which may have caused problems - don't do preferred master startups on the WINS pseudo-net - don't do election requests on the WINS pseudo-net - fix a nasty bug in become_non_master() which wiped out the bits in remove_type before using them. The result was that samba didn't like losing its master status. - changed the logic in the election packet handling to enable us to become a non-master whenever we receive a winning election frame, even if we aren't expecting it - get another packet from the socket in nmbd when we reject one of our own packets, this stops us from going into the packet reading code too often and makes nmbd much snappier - always remove a name immediately when we try to release it, don't wait for the lack of response from the network, otherwise we will end up replying to name that we don't really own. We still send the dereg packets, we just don't wait for them to time out. (This used to be commit eb84f2f342375439d94481a0ccf47c9593544e32)
1996-08-20- fix a bug in NetServerEnum where counted and total were not countedAndrew Tridgell3-47/+57
correctly if there were multiple instances of a name. This led to the infamous "not enough memory" error when browsing (but this isn't the only cause of that message) - fix a triple-chaining bug which affected OpenX following a TconX - fix a serious nmbd bug that meant nmdb would answer packets that it wasn't supposed to, causing havoc with browse lists. - never time out SELF packets. This is an interim fix until I find out why nmbd thought they should be timed out. (This used to be commit 2960c3908c2c3b01a1f2b77def60350018d298e1)
1996-08-19fix a bug in the new chaining codeAndrew Tridgell1-6/+10
(This used to be commit 50ed940451e9d009f19e735074f8fcdb503f5c25)
1996-08-19- added "netbios name" option in smb.conf to make controlling the nameAndrew Tridgell3-200/+96
that samba uses possible - added "socket address" option to allow virtual SMB servers (on systems with IP aliasing line Linux) - disabled FAST_SHARE_MODES by default in Linux as older Linux boxes can't do shared writeable mappings. We really need autoconf ... - added new option types in loadparm so a string type can be specified ot be uppercase only, this is used for the workgroup and netbios name options - auto-create the lock directory if it doesn't exist in shared mem startup - get rid of announce_backup() - change a few comments in nmbd code - rewrote the chaining code completely. Hopefully it will handle any depth chains now. - added LPRng support (This used to be commit e9eac6cd49c352349580ddb13d720cb201aecc48)
1996-08-17- made FAST_SHARE_MODES standard for LinuxAndrew Tridgell1-5/+14
- you can now press enter after a password prompt with "smbclient -L hostname" and it will use a blank username and password, the same as if you used -U% - changed the wins.dat store code to not go via a string variable (just use fprintf instead) - removed a "unsigned long" that luke put back in, changing it to uint32 to keep 64 bit machines happy. Naughtly luke! - allow guest non-connnected print queue listings so ms client 3 can work (This used to be commit 917160dee69bbc198985b6f3232ca2dcda809d8a)
1996-08-17- added support for Amiga-unix (based on BSD I think)Andrew Tridgell4-114/+44
- changed the order of PROGS and SPROGS in Makefile (SPROGS first) - another 64 bit cleanup (for INADDR_NONE) - added paranoia code in DirCacheAdd() to detect looping - fixed important DirCache flush bug - rewrote the NetServerEnum code after I found it could return servers from multiple workgroups at once, and this could cause browsing havoc. Now a null workgroup query is equivalent to a query for the servers primary workgroup - got rid of my_workgroup() - got rid of "workgroup = *" comment in Makefile. We no longer support a workgroup of *, users must set the workgroup explicitly - the wins.dat file was being stored in a different format to what it was being loaded in - this could cause havoc. fixed. - uppercase our netbios name and the workgroup name at startup - if accept fails in main loop when running as a daemon then continue, don't just exit! - don't use ./ on smbclient in smbtar - better code to detect if a process exists (This used to be commit ec3d53963064b50ff33e8eff47812aac82f164ba)
1996-08-15- added FAST_SHARE_MODES codeAndrew Tridgell4-12/+500
- added some named pipe code from Jim (This used to be commit c94866e9e44ea1eb72da06bc65ef1c032ae8e0c9)
1996-08-14fixed an obvious bug that meant that DosPrintQEnum could neverAndrew Tridgell1-1/+1
work. Now we'll see if it works after this fix ... (This used to be commit 9735d7e8e2978ce17a001d7d5766faf382ff5788)
1996-08-13minor cleanupsAndrew Tridgell1-1/+1
(This used to be commit f1dc2b93179ace36407bbb25c2c34c78087714bd)
1996-08-13- sequent-ptx support from bressler@iftccu.ca.boeing.com (RickAndrew Tridgell3-30/+63
Bressler) - machten support from Trevor Strohman (trev@figment.tenon.com) - added qinfo command to client as part of drag-and-drop printer support for win95 from David Chappell <chappell@mouse.cc.trincoll.edu> He also added the "printer driver" option - use sigblock() on more systems and use sigsetmask(0) instead of sigunblock() as its more portable. This beats a problem with zombies on heavilily loaded systems. - added internals.doc written by David Chappell into the source tree - get rid of PRINT_COMMAND options from local.h as they are no longer relevent - new kanji code from Fujita - don't set the recursion_available flag on queries in nmbd - fix a potential bug with pointer subtraction in printing.c - got rid of error_count code as the real fix (the EOF problem) is now in (This used to be commit aa6f8b04d125b5bc00f267abf72b800228aabf7d)
1996-08-09applying login updates from jim@oxfordcc.co.uk, sent in bySamba Release Account2-10/+16
lewis2@server.uwindsor.ca. rest of this patch to follow. bug in interface.c - uninitialised pointer. nmbd has 0x20 as well as 0x0 NetBIOS name when lmhosts entry is added. lkcl (This used to be commit 2b9475cc5fda4b272f19c4f168d3f00363c8042b)
1996-07-30fix a bug that we've had for a long time where we don't handle EOFAndrew Tridgell3-29/+27
properly from clients, and end up looping like mad. At least I _hope_ this is fixed. (This used to be commit a7c7d7afe2ef81f4a74584ce9b71e54442f7e484)
1996-07-17lots of changes to nmbdSamba Release Account1-1/+1
lkcl (This used to be commit 45d3b2644733333c657c48a69719fec72881f7df)
1996-07-10updated docs to match code mods from last two or three updates. doneSamba Release Account1-1/+1
some more commenting of code to match docs. sorted some bugs. ipc BOOL domains was uninitialised. lkcl (This used to be commit cb43ce7bc08fa43a6ce49e0937f13afec5dce67b)
1996-07-04modified become_master() to a state-based system. becoming a masterSamba Release Account1-27/+3
is now performed in stages: wait for each NetBIOS name to be successfully registered before proceeding to the next stage. tied implicit name registration and release (broadcast method) to the same piece of code as explicit method (via WINS server). created special_browser_name() function that checks __MSBROWSE__ name: this name is ignored by WINS servers apparently. fixed likely incompatibility between refresh_my_names() and add_my_names(). (netbios entries were unlikely to be refreshed). NOTE: none of these changes have been tested. at all. lkcl (This used to be commit 7719fb06524a66ce5e3f30f3152ddb1e200c97f3)
1996-07-03- moved the protocol defs in the client to keep sill C compilers happyAndrew Tridgell1-0/+5
- added change for cnum range in reply_tdis() (This used to be commit 609c3a5e1e3a8d9ba380a802ab3ecf6f47093846)
1996-07-01patch to fix NetServerEnum with multiple workgroup lists kindly supplied.Samba Release Account1-3/+27
it works for him. needs testing. (This used to be commit 546c49080707c0cbaa6bfc928102d52826867592)
1996-06-10a cleanup of the receive_smb() usage, adding timeouts in some placesAndrew Tridgell5-13/+32
also added paranoid code in the main process() loop of smbd to detect when smbd is looping uselessly. This should stop the "smbd is chewing lots of cpu" reports (This used to be commit 8e9dce34d50d673cb50531f0c4c7672ce2522cef)
1996-06-10got rid of a lot of redundent header files as we now globally generateAndrew Tridgell12-19/+7
prototypes automatically using "make proto". This is much less prone to error than the old method of manually adding prototypes (This used to be commit b551dc98f7cc194a5fc2e67a4ebae7fd67a01bbc)
1996-06-08- added comments to byteorder.h explaining how it works.Andrew Tridgell1-16/+92
- fixed problem with installscripts if srcdir is not set - fixed ptr init bug in interface.c - changed default lookup type in nmblookup to match nbtstat under NT - new quotas fixes for sunos and solaris (This used to be commit e775576f026d282473256aeac6fef65a85acd98e)
1996-06-07- added predict.c, moving the routines from util.cAndrew Tridgell1-0/+146
- added iface_count() and iface_n_ip() routines so its easy to loop over the local interface list - made readsize a normal loadparm global - check for null w in add_domain_entry() - set the deathtime to time()-1 for doamin entries with servertype==0 This allows servers that are shutting down to be removed - add the 0x1c name at startup if we are a WINS server. Previously we added it only if we were a master - loop over interfaces in add_my_domains(), so people don't have to have a lmhosts file to get lp_workgroup() on all interfaces - set add to True for find_workgroupstruct() in nmbsync, and check for null return - remove some ugly "errno = EBADF" bits. they just confused things. (This used to be commit 88b191b48836eeb7937f25b37d0bdd4a2276e5a7)
1996-06-06- added interface.c and removed all the references to myip, bcast_ipAndrew Tridgell3-26/+47
and Netmask, instead replacing them with calls to routines in interface.c - got rid of old MAXINT define - added code to ensure we only return one entry for each name in the ipc enum routines - added new_only option to add_netbios_entry() to prevent overwriting of important names - minor time handling fixup (This used to be commit 7ed71b73ae745da099072eee36fc2700d1d91407)
1996-06-05- remove some incorrect prototypes from server.cAndrew Tridgell1-5/+0
- formatting cleanup in check_master_browser() - removed unused code from nameserv.c (This used to be commit ed3ef2e47d5039077993c6addaf44dce2bb1e780)
1996-06-05- changed some debug levels in clientutil.cAndrew Tridgell2-10/+20
- added dir_check_ftype() to clean up the file type checking a bit - added check for libc version >= 5 for setfsuid() for Linux - moved the AM_MASTER() and related macros to nameserv.h - added proper defines for the various netbios announce types - don't call the announce_backup() code, as I'm pretty sure its wrong it sent ANN_GetBackupListReq packets as broadcasts, they are supposed to be used only by clients to the master browser to find a list of available backup servers to remote a netserverenum to, I don't think nmbd should ever send one. - fixed a bug in the browse list writing - minor debug cleanups - put in the code to discard our own broadcasts (it won't work for multi-homed hosts though) - changed ELECTION_VERSION to 1 so we can be beaten by a NT 3.51 server by lowering the os level. - only do sync_browse_lists() if we are the master browser, otherwise we'll cause network overload - don't call tell_become_backup() as it appears to be badly broken, it should only be used when the machine being told has its MAINTAIN_LIST to to auto. Not calling it does no great harm anyway - fix a nasty bug where becomebackup was confused with reset browser! - make setbuffer() not get caught by the auto protototypes (This used to be commit cfbad9b08242962f41595273de08a7293fe432b1)