summaryrefslogtreecommitdiffstats
path: root/source/include
Commit message (Collapse)AuthorAgeFilesLines
...
* make protoTim Potter2000-02-031-332/+373
|
* Busting up of source/include/smb.h into smaller pieces which can beTim Potter2000-02-036-349/+608
| | | | #included by VFS modules without bringing in too much other junk.
* Wrapped popen calls in HAVE_POPEN - needed if we are to add theJeremy Allison2000-01-291-0/+3
| | | | | env patch. Jeremy.
* Added hash-based stat cache code from Ying Chen.Jeremy Allison2000-01-263-0/+86
| | | | Jeremy.
* Second set of inline optimisation fixes from Ying Chen <ying@almaden.ibm.com>.Jeremy Allison2000-01-262-1/+5
| | | | | | Stop makeing function calls for every use of skip_multibyte_char. This function is called several *million* times during a NetBench run :-). Jeremy.
* First set of speed improvements from Ying Chen <ying@almaden.ibm.com>.Jeremy Allison2000-01-252-13/+75
| | | | | Inline several commonly used functions as macros. Jeremy.
* made cvs main up-to-date with samba_tng, with addition of process id toLuke Leighton2000-01-213-1/+9
| | | | msrpc loop-back interface.
* SAMR_R_UNKNOWN_38 is 3 uint16 params (4-byte aligned) followed by status code.Luke Leighton2000-01-171-1/+0
|
* proto updateAndrew Tridgell2000-01-161-2/+4
|
* make a br_off a SMB_BIG_UINTAndrew Tridgell2000-01-161-1/+1
|
* damn, Solaris already has a "enum lock_type"Andrew Tridgell2000-01-142-8/+7
| | | | changed it to "enum brl_type"
* we now pass all byte range locking testsAndrew Tridgell2000-01-141-3/+5
| | | | | the last piece was to use a smb timeout slightly larger than the locking timeout in bloking locks to prevent a race
* Added "inherit permissions" patch.Jeremy Allison2000-01-141-1/+3
| | | | | Fixed locking bug found by Andrew. Jeremy.
* added Enosuchshare and a lock_type enumAndrew Tridgell2000-01-131-0/+4
|
* new prototypesAndrew Tridgell2000-01-131-5/+22
|
* defined br_off as a type for byte range offsets. For now I've set itAndrew Tridgell2000-01-131-0/+3
| | | | | as SMB_OFF_T, we need to do some autoconf changes to generate a 64 bit int whenever possible (eg. long long on 32 bit i386)
* Added utmp fix from David Lee <T.D.Lee@durham.ac.uk>.Jeremy Allison2000-01-122-0/+9
| | | | Jeremy.
* modified smbd/msrpc credential transfer system. user session keyLuke Leighton2000-01-111-1/+3
| | | | | | | | | is *missing* from samba cvs main, therefore it is set to all zeros. this will cause, amongst other things, administrator-changing-user-passwords, and setting up new accounts, to fail, as the user's password can only be decoded with the session key (in this case, the administrator's usr sess key). it's never a perfect world, is it?
* I'm currently designing a new locking system (using a tdb database!)Andrew Tridgell2000-01-101-2/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | that will make us match NT semantics exactly and do away with the horrible fd multiplexing in smbd. this is some diag stuff to get me started. - added the ability to do read or write locks in clientgen.c - added a LOCK4 test to smbtorture. This produces a report on the server and its locking capabilities. For example, NT4 gives this: the same process cannot set overlapping write locks the same process can set overlapping read locks a different connection cannot set overlapping write locks a different connection can set overlapping read locks a different pid cannot set overlapping write locks a different pid can set overlapping read locks the same process can set the same read lock twice the same process cannot set the same write lock twice the same process cannot override a read lock with a write lock the same process can override a write lock with a read lock a different pid cannot override a write lock with a read lock the same process cannot coalesce read locks this server does strict write locking this server does strict read locking whereas Samba currently gives this: the same process can set overlapping write locks the same process can set overlapping read locks a different connection cannot set overlapping write locks a different connection can set overlapping read locks a different pid can set overlapping write locks a different pid can set overlapping read locks the same process can set the same read lock twice the same process can set the same write lock twice the same process can override a read lock with a write lock the same process can override a write lock with a read lock a different pid can override a write lock with a read lock the same process can coalesce read locks this server does strict write locking this server does strict read locking win95 gives this - I don't understand why! the same process cannot set overlapping write locks the same process cannot set overlapping read locks a different connection cannot set overlapping write locks a different connection cannot set overlapping read locks a different pid cannot set overlapping write locks a different pid cannot set overlapping read locks the same process cannot set the same read lock twice the same process cannot set the same write lock twice the same process cannot override a read lock with a write lock the same process cannot override a write lock with a read lock a different pid cannot override a write lock with a read lock the same process cannot coalesce read locks this server does strict write locking this server does strict read locking
* smbd/mangle.cJeremy Allison2000-01-081-1/+0
| | | | | | smbd/negprot.c: Tidyup of static initializers. smbd/server.c: Fix -l option. Jeremy.
* this looks like a big commit, but it isn't really :)Andrew Tridgell2000-01-071-1/+1
| | | | | | | | This fixes our netbios scope handling. We now have a 'netbios scope' option in smb.conf and the scope option is removed from make_nmb_name() this was prompted by a bug in our PDC finding code where it didn't append the scope to the query of the '*' name.
* Re-added "dfree command" functionality that was described in the man pagesJeremy Allison2000-01-061-0/+1
| | | | | but was not in the code. Jeremy.
* Moved check_plaintext_password() into smbd/chgpasswd.c from smbd/ipc.c.Jeremy Allison2000-01-053-0/+9
| | | | | | configure configure.in include/config.h.in: Added <sys/un.h> autoconf code for Luke's UNIX domain sockets code. Jeremy.
* implemented talloc() as described on samba-technical. This fixes theAndrew Tridgell2000-01-053-0/+40
| | | | | | | lp_string() bug properly. we still need to add lp_talloc_free() calls in all the main event loops, I've only put it in smbd and nmbd thus far.
* simple mods to add msrpc pipe redirection. default behaviour: fall backLuke Leighton2000-01-035-22/+268
| | | | to using internal msrpc code in smbd.
* added suppport for unexpected udp/138 packetsAndrew Tridgell2000-01-031-2/+4
| | | | | | | | | | | | | | I also fixed up the lookup_pdc_name() code so that it now works, even with a NT server that insists on replying to udp/138. The method I used to match packets was to use the mailslot string as a datagram ID. The true dgm_id doesn't work as NT doesn't set it correctly. uggh. PS: Jeremy, I had to change your code quite a bit, are you sure this worked with a Samba PDC?? The code looked broken, it got the offsets wrong in the SMB portion of the packet and filled in the IP incorrectly.
* got rid of mem_manAndrew Tridgell2000-01-031-4/+0
| | | | | | | yamd is much better, and doesn't require any source code changes if you haven't seen yamd then take a look at http://www3.hmc.edu/~neldredge/yamd/ its excellent!
* added the unexpected packet database (unexpected.tdb)Andrew Tridgell2000-01-032-5/+15
| | | | | | | | | | | | this means "nmblookup -S" now always works, even with broken servers the database stores all unexpected replies and these can be accessed by any client. while doing this I cleaned up a couple of functions, and put in place a better trn_id generator. in most places the code got quite a bit simpler due to the addition of simple helper functions. I haven't yet put the code in to take advantage of this for pdc replies - that will be next. Jeremys pdc finding code will then work :)
* - added tdb_flags option to tdb_open()Andrew Tridgell2000-01-021-2/+2
| | | | | | | | | - added TDB_CLEAR_IF_FIRST flag to clear the database if this is the first attached process. Useful for non-persistent databases like our locking area (this will also make upgrades to new database layouts easier) - use lock_path() in a couple of places - leave connections database open while smbd running - cleaned up some tdb code a little, using macros for constants
* Converted most of the functions in lib/util_str.c to smb_ucs2_t equivalents.Jeremy Allison1999-12-294-13/+60
| | | | Jeremy.
* Samba now includes a full ucs2 upper to lower case (and vica versa) map table.Jeremy Allison1999-12-231-0/+13
| | | | Jeremy.
* Upper to lower case map table for unicode.Jeremy Allison1999-12-231-0/+65536
| | | | Jeremy.
* include/includes.h: Trimmed down unicode directory entry to be POSIX complient.Jeremy Allison1999-12-221-3/+1
| | | | | | lib/system.c: Trimmed down unicode directory entry to be POSIX complient. lib/util_unistr.c: Added wstrdup(). Jeremy.
* First cut at unicode sys_xx functions. Now to start moving upwards.....Jeremy Allison1999-12-223-6/+54
| | | | Jeremy.
* Ok - we now have the following functions for UNICODE support :Jeremy Allison1999-12-221-0/+2
| | | | | | | | | | | | | | | | | unicode_to_unix() unix_to_unicode() unicode_to_dos() dos_to_unicode() wstrlen() safe_wstrcpy() safe_wstrcat() wstrcmp() wstrncmp() wstrstr() wstrchr() wstrrchr() wstrtok() Jeremy.
* Added new unicode functions - not used yet, but are the basis for theJeremy Allison1999-12-211-17/+3
| | | | | internal unicode conversion of Samba. Jeremy.
* converted all our existing shared memory code to use a tdb databaseAndrew Tridgell1999-12-212-9/+28
| | | | | | | | | | | | | instead of either sysv or mmap shared memory or lock files. this means we can now completely remove locking_shm.c locking_slow.c shmem.c shmem_sysv.c and lots of other things also got simpler locking.c got a bit larger, but is much better compartmentalised now
* first cut at using the tdb code for the connections structure, theAndrew Tridgell1999-12-212-12/+22
| | | | | SWAT status page and smbstatus. It made the code _much_ simpler, I wish we'd done a database module a long time ago!
* first pass at the database code for Samba. This also includes a testAndrew Tridgell1999-12-212-0/+12
| | | | | | | | | | suite and a very simple tool for manuipulating the databases. the main code is in tdb/tdb.c and includes both mmap and file based IO. All databases auto-expand and allow multiple simultaneous writers. the next step is using this new capability in lots of places in Samba where we have existing ad-hoc databases
* update version to pre-3.0.0Andrew Tridgell1999-12-171-1/+1
|
* interfaces.h from 2.0.6Andrew Tridgell1999-12-171-0/+10
|
* 2nd phase of head branch sync with SAMBA_2_0 - this delets all the files ↵Andrew Tridgell1999-12-1316-3010/+0
| | | | that were in the head branch but weren't in SAMBA_2_0
* first pass at updating head branch to be to be the same as the SAMBA_2_0 branchAndrew Tridgell1999-12-1323-4963/+2237
|
* changed function name of get_home_dir() to get_unixhome_dir(), to stopLuke Leighton1999-12-121-1/+9
| | | | | | | clash with gnu readline library. fixed issue with [homes] service not being there - call lp_add_home() just before starting the msrpc processing.
* final part of "first" phase converting over to msrpc daemon architecture.Luke Leighton1999-12-122-29/+72
| | | | | | | | | | | | done a minimal amout of clean-up in the Makefile, removing unnecessary modules from the link stage. this is not complete, yet, and will involve some changes, for example to smbd, to remove dependencies on the password database API that shouldn't be there. for example, smbd should not ever call getsmbpwXXX() it should call the Samr or Lsa API. this first implementation has minor problems with not reinstantiating the same services as the caller. the "homes" service is a good example.
* delineation between smb and msrpc more marked. smbd now constructsLuke Leighton1999-12-125-46/+81
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | pdus, and then feeds them over either a "local" function call or a "remote" function call to an msrpc service. the "remote" msrpc daemon, on the other side of a unix socket, then calls the same "local" function that smbd would, if the msrpc service were being run from inside smbd. this allows a transition from local msrpc services (inside the same smbd process) to remote (over a unix socket). removed reference to pipes_struct in msrpc services. all msrpc processing functions take rpcsrv_struct which is a structure containing state info for the msrpc functions to decode and create pdus. created become_vuser() which does everything not related to connection_struct that become_user() does. removed, as best i could, connection_struct dependencies from the nt spoolss printing code. todo: remove dcinfo from rpcsrv_struct because this stores NETLOGON-specific info on a per-connection basis, and if the connection dies then so does the info, and that's a fairly serious problem. had to put pretty much everything that is in user_struct into parse_creds.c to feed unix user info over to the msrpc daemons. why? because it's expensive to do unix password/group database lookups, and it's definitely expensive to do nt user profile lookups, not to mention pretty difficult and if you did either of these it would introduce a complication / unnecessary interdependency. so, send uid/gid/num_groups/gid_t* + SID+num_rids+domain_group_rids* + unix username + nt username + nt domain + user session key etc. this is the MINIMUM info identified so far that's actually implemented. missing bits include the called and calling netbios names etc. (basically, anything that can be loaded into standard_sub() and standard_sub_basic()...)
* jerry spotted that get_domain_sids() was being called with the wrongLuke Leighton1999-12-081-2/+2
| | | | | arguments: get_any_dc_name() was being called with a server name not a domain name. oops.
* moved sys/un.h to after sys/socket.h. done a gnu autoconf around sys/un.hLuke Leighton1999-12-082-1/+7
|
* parsing code for transferring unix and nt security credentials over-the-wire.Luke Leighton1999-12-081-0/+88
| | | | | | | | | at present, a unix password is missing from the unix credentials, but is not _actually_ expected to be needed. weeelll... maybe :-) this is used to transfer credentials between smbd and msrpc daemons, down a unix socket, so that the unix and nt credentials can be inherited by an msrpc daemon called up from smbd.
* ABOUT TIME!!!!!!!!Luke Leighton1999-12-084-88/+84
| | | | | | | | | | | | | | | damn, this one is bad. started, at least two days ago, to add an authentication mechanism to the smbd<->msrpc redirector/relay, such that sufficient unix / nt information could be transferred across the unix socket to do a become_user() on the other side of the socket. it is necessary that the msrpc daemon inherit the same unix and nt credentials as the smbd process from which it was spawned, until such time as the msrpc daemon receives an authentication request of its own, whereupon the msrpc daemon is responsible for authenticating the new credentials and doing yet another become_user() etc sequence.