1
0
mirror of https://github.com/samba-team/samba.git synced 2025-01-28 17:47:29 +03:00

627 Commits

Author SHA1 Message Date
Andrew Tridgell
23294e6fc1 added include of sys/resource.h
(This used to be commit bf136b4fa8aeadcea8f65610148d46d093aba2cc)
1998-08-16 05:22:01 +00:00
Andrew Tridgell
739d0b1ddc got rid of the Files[] array completely (previously I'd just made it
private to files.c)

It now is a doubly linked list with a bitmap for allocated file
numbers. Similarly for the fd_ptr code. I also changed the default
maximum number of open files to 4096. The static cost is 1 bit per
file.

It all seems to work, and it passes the "does Sue scream" test, but if
you see weird behaviour then please investigate. With the volume of
new code that has gone in there are bound to be one or two bugs
lurking.

note that you must do a "make clean" before building this as many data
structures have changed in size.
(This used to be commit 79755ce97004b787d7e83a8d18fc4c7c003b7231)
1998-08-16 04:08:47 +00:00
Andrew Tridgell
a7acf10566 server.c: fixed a bug in close_file() with the new files.c handling code
bitmap.c: added bitmap hanlding code in preparation for increasing the
          default max open files to several thousand
(This used to be commit f573a65b67e7a57586fec57845598e49b157ee0a)
1998-08-16 03:04:06 +00:00
Andrew Tridgell
127655cc88 this checkin gets rid of the global Files[] array and makes it local
in files.c

it should now be faily easy to expand the default MAX_OPEN_FILES to
many thousands.
(This used to be commit b088c804f98908eb02f05ab2f2e8a61691a0a582)
1998-08-15 07:27:34 +00:00
Andrew Tridgell
570f8e9a77 moved the printing related files to a separate printing/ directory.
(This used to be commit d933a47be6fa7b5f161179fa11244aaba1051160)
1998-08-15 03:26:52 +00:00
Jeremy Allison
e13aeea928 configure: Changes for extra headers.
configure.in: Source for header changes.
client/clitar.c: Fixed isXXX macros & debugs for gcc pedantic compile.
include/config.h.in: Added MEMSET, BZERO, MEMORY, RPCSVC_YPCLNT, STRINGS headers.
include/includes.h: Headers for the above.
include/smb.h: Made SIGNAL_CAST POSIX by default void (*)(int).
lib/access.c: Fixed isXXX macros & debugs for gcc pedantic compile.
lib/charset.c: Fixed isXXX macros & debugs for gcc pedantic compile.
lib/debug.c: Fixed signal functs.
lib/kanji.c: Fixed isXXX macros & debugs for gcc pedantic compile.
lib/smbrun.c: Fixed isXXX macros & debugs for gcc pedantic compile.
lib/util.c: Fixed isXXX macros & debugs for gcc pedantic compile.
libsmb/namequery.c: Fixed isXXX macros & debugs for gcc pedantic compile.
locking/shmem.c: Fixed isXXX macros & debugs for gcc pedantic compile.
locking/shmem_sysv.c: Fixed error messages in sysV stuff.
nmbd/asyncdns.c: Fixed signal functs.
nmbd/nmbd.c: Fixed isXXX macros & debugs for gcc pedantic compile.
passdb/passdb.c: Fixed isXXX macros & debugs for gcc pedantic compile.
passdb/smbpassfile.c: Fixed isXXX macros & debugs for gcc pedantic compile.
smbd/chgpasswd.c: Fixed isXXX macros & debugs for gcc pedantic compile.
smbd/ipc.c: Fixed isXXX macros & debugs for gcc pedantic compile.
smbd/nttrans.c: Fixed fsp code path.
smbd/password.c: fixed HAVE_YP_GET_DEFAULT_DOMAIN problem.
smbd/printing.c: Fixed isXXX macros & debugs for gcc pedantic compile.
smbd/reply.c: Fixed isXXX macros & debugs for gcc pedantic compile.
smbd/server.c: Fixed isXXX macros & debugs for gcc pedantic compile.
smbd/trans2.c: Fixed core dump bug.
smbd/uid.c: Fixed isXXX macros & debugs for gcc pedantic compile.
Jeremy.
(This used to be commit 1b9cbcd02e575dc0a95fa589f720df30a4acc46b)
1998-08-15 01:19:26 +00:00
Andrew Tridgell
b9623ab59e this is the bug change to using connection_struct* instead of cnum.
Connections[] is now a local array in server.c

I might have broken something with this change. In particular the
oplock code is suspect and some .dll files aren't being oplocked when
I expected them to be. I'll look at it after I've got some sleep.
(This used to be commit c7ee025ead4a85b6fa44a832047b878451845fb6)
1998-08-14 17:38:29 +00:00
Andrew Tridgell
2bb8f8ce43 define INADDR_NONE if not already defined
(This used to be commit 7446540017e29827900981cab5ae3a2f9f7b3ce6)
1998-08-14 06:25:26 +00:00
Jeremy Allison
3cf6cc6134 Makefile.in: Changed so that make proto will work with ldap & nisplus.
locking/locking.c: Made #ifdef'ed out functions static for Make proto.
lib/util.c: Re-instated old mask_match code for UNIX filesystem checks
            only. Client calls use the new mask_match code. Changed the
            name of the old function to unix_mask_match.
Jeremy.
(This used to be commit b68e756ff57622c6c74f28031d4be964d7b1c9bc)
1998-08-14 02:02:40 +00:00
John Blair
c629b4c53f Added the APPLEDOUBLE macro for the name of the directory containing
a file's Macintosh resource fork (normally .AppleDouble under Netatalk).
(This used to be commit 1313451f2161f69d33e7f1d41a1bf5615f61014c)
1998-08-13 18:56:09 +00:00
Jeremy Allison
5a5b4258ed HAVE_STATVFS should be STAT_STAVFS (caused printing to break on IRIX).
Jeremy.
(This used to be commit 83c54b01ba6c891a0587a80aa083594ddda9a680)
1998-08-13 16:20:37 +00:00
Jeremy Allison
b1778b6b57 include/smb.h: Removed dir_ptr. Not needed.
locking/locking.c: First cut a blocking lock code. #ifdef'ed out for now.
locking/locking_shm.c: Removed dir_ptr. Not needed.
smbd/nttrans.c: More work on ChangeNotify - return is not an error and needs
                to be handled as a nttrans with zero params. Removed dir_ptr. Not needed.
smbd/reply.c:
smbd/server.c:
smbd/trans2.c: Removed dir_ptr. Not needed.

Hmmm. At the moment smbclient is broken - doesn't issue prompt correctly.
This needs looking at.

Jeremy.
(This used to be commit ddfbcc05815621d3c463f92faed047f126412342)
1998-08-11 23:28:35 +00:00
Christopher R. Hertel
a0082c340a I've come up with a different scheme for doing the DEBUG() and DEBUGADD()
macros that meets the RVALUE requirement and doesn't use the (a?b:c) format
that Andrew called "ugly".  I've added the new macros but kept the old
macros within a #if 0..#else..#endif block in case I've missed somthing.

Basically, I've used

  (void)( (a) && (b) )

or

  (void)( (a) && (b) && (c) )

instead of

  ( (a) ? (void)(b) : (void)(c) )

or similar.  I have this compiled and running now.

Here's the diff:

$ cvs diff smb.h
Enter passphrase for RSA key 'crh@Ruby':
Index: smb.h
===================================================================
RCS file: /data/cvs/samba/source/include/smb.h,v
retrieving revision 1.172
diff -r1.172 smb.h
143a144,145
> #if 0
>
150a153,164
>
> #else
>
> #define DEBUG( level, body ) \
>   (void)( (DEBUGLEVEL >= (level)) \
>        && (dbghdr( level, FILE_MACRO, FUNCTION_MACRO, (__LINE__) )) \
>        && (dbgtext body) )
>
> #define DEBUGADD( level, body ) \
>   (void)( (DEBUGLEVEL >= (level)) && (dbgtext body) )
>
> #endif

Chris -)-----
(This used to be commit 53b433e6ab9fd69a02016ee4f2a3f756640ea565)
1998-08-11 18:56:03 +00:00
Christopher R. Hertel
7938e492ba Removed a stray semicolon in the DEBUGADD() macro.
(This used to be commit efa67d6b2b6d4a1e007dba5f2f5da5aff723fe59)
1998-08-11 15:54:15 +00:00
Jeremy Allison
9042aa41c3 Makefile.in: Added CHECK target back in (at Herb's request). Added
manpath in (although we don't currently use it).
client/client.c: Added John Blair's fixes for "put -".
include/nterr.h: Added NT_STATUS_NOTIFY_ENUM_DIR error code.
smbd/nttrans.c: Added in devious fix for one-shot NT change notify bug.
Jeremy.
(This used to be commit 4ac3091e57e9ab234b3c051333ba521a92defa99)
1998-08-11 02:13:01 +00:00
Jeremy Allison
17fb3a2304 Makefile.in: Fixed make clean bug with CVS directory in bin/.
include/smb.h: Fixed bugs in Debug macro's with SGI compiler.
smbd/trans2.c: Fixed bug reported by Zoltan Palmai <ZSPA@chevron.com>
               PR#8903 where get_lanman2_dir_entry() could return a
               mangled name as a resume key and call_trans2findnext()
               wasn't doing the same.
Jeremy.
(This used to be commit 9d010e721c27af1d9498fd1e147993ba8ac8b41e)
1998-08-10 20:12:53 +00:00
Andrew Tridgell
670c6addc3 moved access.c into lib/ from smbd/ as it is needed by testparm. I
modified it not to need any smbd specific structures and instead pass
things from smbd.
(This used to be commit 162141d3b3fcf53fbc6a1f18702df85c2b7f1781)
1998-08-10 07:29:57 +00:00
Andrew Tridgell
fa88efbbac split the system password checking routines out of smbd/password.c and
into passdb/pass_check.c. This means SWAT no longer needs to link to
smbd/password.c
(This used to be commit 90d93889d722670cbb517017531264630af759bf)
1998-08-10 07:04:53 +00:00
Andrew Tridgell
59e2e2c7d8 a few more things compile.
I'll do the rest tomorrow.
(This used to be commit b92ce41c54fa187bce3287257996f7a3e9c9b9ff)
1998-08-09 14:58:51 +00:00
Andrew Tridgell
723b9d0d5b swat compiles, with some even uglier hacks. we really have to do
something about our dependencies between seemingly unrelated code.
(This used to be commit 3ecfd271de5e6f7b4868800e7c06d51ed69278fd)
1998-08-09 14:37:32 +00:00
Andrew Tridgell
19c965894d nmbd compiles and links. I had to do some ugly stuff, putting files in
illogical places. Once I get everything compiled these will need to be
revisited, but at least the new Makefile.in makes it really obvious
what is out of place.
(This used to be commit beef5341fc313249bf1117deccb9c21c510c4697)
1998-08-09 14:20:02 +00:00
Andrew Tridgell
ea6a257fca close to having nmbd linking (just a bit of repository hacking to go)
(This used to be commit 34dd9b79457ab01637e0d7374d33cafe2f859c99)
1998-08-09 14:08:42 +00:00
Andrew Tridgell
35f815d278 this gets smbd compiling and linking correctly with the new layout.
(This used to be commit d08fa39cec5c71a9034dbf4241fc7e195f1bbaa5)
1998-08-09 13:25:34 +00:00
Andrew Tridgell
5a5049cd77 removed the if statements from the DEBUG() macro definitions.
Chris, you should never put if statements in macros, use the ugly
(a?b:c) form instead, otherwise you can produce incorrect code when
you have things like:

if (foo)
   DEBUG((blah));
else
   DEBUG((blooh));
(This used to be commit ab912448c1ff2487b6a313574d72f389baa65e6d)
1998-08-09 13:12:09 +00:00
Andrew Tridgell
87bcd5502c added ignore rules for the dummy files
(This used to be commit 687f76a17d6d3ebd33b4d9a848deef56f3c1f56a)
1998-08-09 11:25:49 +00:00
Andrew Tridgell
426de6f97f the autoconf scripts are now converted to the new directory structure
now the Makefile .....
(This used to be commit 4fae7f129e46930960831af0da28496f9766f6ae)
1998-08-09 11:23:13 +00:00
Andrew Tridgell
963e96f3a9 added --with-nisplus-home option
(This used to be commit 70000c21909a154344b489e8aa18a5868ff52865)
1998-08-08 01:15:14 +00:00
Jeremy Allison
7448091da6 First implementation of ChangeNotify - this version only checks
for changes in the directory modify timestamps. A better version
will look at the requested client flags, and create a hash that
represents the current state of the directory, and check against
this instead.
debug.c: Added lp_timestamp_logs() function.
loadparm.c: Added "change notify timeout" in seconds (default 60)
- this is the scan rate for a directory.
            Added ""timestamp logs" boolean - default True. Turns
off log timestamps (so I can read them :-).
nttrans.c: ChangeNotify implementation.
server.c: ChangeNotify implementation.
shmem_sysv.c: Added exits on shmem errors (without them smbd can
              core dump if some calls fail).
smb.h: Added ChangeNotify flags for future use.
util.c: Tidied up typedef.
Jeremy.
(This used to be commit a0748c3f53974483680ebe2ea4f556ece8d7fa43)
1998-08-03 19:07:55 +00:00
Christopher R. Hertel
ebd415c03f This is the checkin of the debug changes.
Makefile.in:  I've added debug.o.
  proto.h    :  Rebuilt, as is standard for these sorts of things.
  smb.h      :  New macros, etc.
  util.c     :  Debug code removed.

I'll check in debug.c in the next step.

Chris -)-----
(This used to be commit 653c17c1b8e34bfbd05ea35ada9436a50d5a7ba4)
1998-07-31 20:16:35 +00:00
Andrew Tridgell
3a1fdf05dd added test for getpwanam().
(This used to be commit 4eb28f7148f61a215ca644cbe704a4e8dbd83a77)
1998-07-31 03:33:25 +00:00
Jeremy Allison
7284bb5ca0 Makefile.in: Moved UBIQX stuff into UTILOBJ.
loadparm.c: Added "ole locking compatibility" option (default "true").
locking.c: Changes to implement union in files_struct.
locking_shm.c: Changes to implement union in files_struct.
nttrans.c: Made opening a directory explicit (we have to).
           Added create directory code for nttrans.
reply.c: Changes to implement union in files_struct.
server.c: Changes to implement union in files_struct. Added create directory code.
trans2.c: Changes to implement union in files_struct.
smb.h: Changes to implement union in files_struct.
util.c: Changed linked list code to UNIQX linked list. This will make
        the other lists I need to implement for ChangeNotify and blocking
        locks easier.
Jeremy.
(This used to be commit 3a5eea850bb256b39cff8ace1e4fb4e0c1f5472b)
1998-07-30 21:18:57 +00:00
Andrew Tridgell
555616b85e added HAVE_FUNCTION_MACRO test
(This used to be commit cae580ccc397ea33fdb24a777bdedef6e8271244)
1998-07-30 07:05:15 +00:00
Andrew Tridgell
184cf564e6 updated prototypes
(This used to be commit 0bdb51af3199eb32cd3da4c4b8d31fbed5d2ae85)
1998-07-29 07:11:33 +00:00
Andrew Tridgell
a957abd1fd test for a broken inet_ntoa and replace it if necessary (for
IRIX+gcc-2.8.1)
(This used to be commit ddffbcbcb1284b6ead5f7f7b6665ba2456c0071a)
1998-07-29 07:02:06 +00:00
Andrew Tridgell
fb08c34cf3 get rid of the runtime test for broken getgroups() and add a compile
time test instead. This also allows us to get rid of the igroups
element of a couple of structures.
(This used to be commit 8b25fe734166b76ceebf8d9543c706ebe0fddc96)
1998-07-29 05:05:36 +00:00
Andrew Tridgell
8d42ee0f2c some merge cleanups
(This used to be commit 1d655b7c64231b0aec0548bb90fc3dcc3f37791c)
1998-07-29 03:15:02 +00:00
Andrew Tridgell
64578c0589 merge from the autoconf2 branch to the main branch
(This used to be commit 3bda7ac417107a7b01d91805ca71c4330657ed21)
1998-07-29 03:08:05 +00:00
Jeremy Allison
c48b3fce6b locking.c: Print messages when we downgrade a lock.
reply.c: Do the same mask expansion we do in trans2.c - needed for Win98.
trans2.c: Make the mask expansion into a function call now we have to
          do it twice.
Jeremy.
(This used to be commit 7b3a9d6285cc0d1967155a68845e28c6296ecc67)
1998-07-29 00:27:23 +00:00
Jeremy Allison
7abcd0521e loadparm.c: Added strict sync parameter.
locking.c: Added code to deal with real open mode of file.
reply.c: Added strict sync parameter.
server.c: Added strict sync parameter. Fixed open modes.
Jeremy.
(This used to be commit ed57b603b5c9333d588e62d774ad2be67e43ffd9)
1998-07-28 18:15:31 +00:00
Jeremy Allison
1aa138922e chgpasswd.c: Fixed up debug calls to stop crashes if ptsname failed.
local.h: Kept FSTYPE_STRING as Samba for now.
nmbd_browsesync.c: Added bugfix from Matt Chapman mattyc@cyberdude.com
                   - lmb_browserlist is now a struct ubi_dlList not a
                   struct browse_cache_record *.
server.c:
smb.h:
uid.c:
password.c: Removed attrs code - it is not used anywhere.
Jeremy
(This used to be commit ef1af7fe6d5c58ae57b8e4efff0729e1a315da43)
1998-07-27 18:50:45 +00:00
Christopher R. Hertel
e6608b5279 Converted the browser database to a ubi_dLinkList. This should reduce code
size, etc.  Also did a bit of work to add comments.
Chris -)-----
(This used to be commit d8b0a2104c05df957f0eb49c21388ec5a4858d98)
1998-07-24 19:03:11 +00:00
Jeremy Allison
06c0349c44 locking.c: Added lock type to is_locked() and do_lock()
as the code in reply_lockingX wasn't taking account of
           the difference between read and write locks ! How did this
           ever work :-) !
reply.c:
server.c: Add lock type to is_locked() and do_lock().
util.c: Also added code from klausr@ITAP.Physik.Uni-Stuttgart.De
        to fix problem with log files growing too large if an
        smbd writes less than 100 debug messages.
Jeremy.
(This used to be commit 80080abf772a470d5f0f4dcd4a75fb2a09a9fb2a)
1998-07-23 00:10:26 +00:00
Jeremy Allison
f5866fd4ba Fixed bug found by Richard Sharpe. After increasing files_struct size by
MAX_OPEN_DIRECTORIES for nttrans I forgot to update the code that
enumerates the array.
Created new MAX_FNUMS in local.h, changed all code that iterates
through the files_struct array to use this.
(sorry Richard).
Jeremy.
(This used to be commit 339b10222269d71c7a493cc08b7b1bfd35fd55fc)
1998-07-22 13:59:19 +00:00
Jeremy Allison
781c9e5082 includes.h: Added feature type USE_GRANTPT for pty code.
chgpasswd.c: Updated to use USE_GRANTPT feature definition.
Jeremy.
(This used to be commit 953c5dbbae8c1370e5988619746b508f26cb0390)
1998-07-22 01:31:59 +00:00
Jeremy Allison
471087c9d2 Code added to fix the renaming of a directory under NT SMB calls.
local.h: Changed MAXDIR to MAX_OPEN_DIRECTORIES - shmem size also tuned by this.
dir.c: Use MAX_OPEN_DIRECTORIES.
nttrans.c: Allow opening of a directory to succeed. Doesn't actually open
           a file descriptor but takes a files_struct slot marked as an
           fd.
reply.c: Changed to close any outstanding is_directory files.
         reply_close changed to understand directory files.
server.c: Added open_directory(), close_directory() calls.
smb.h: Added is_directory to files_struct.
       Changed OPEN_FNUM to check that target is !is_directory (this
       prevents the normal file calls from processing a directory
       files_struct.
Jeremy.
(This used to be commit e01ce693f47e75e277f3440d46e32b0bd866b550)
1998-07-17 22:21:24 +00:00
Jeremy Allison
b61b50ac2c local.h: Added NTFS define if HAVE_NT_SMBS is defined.
nttrans.c: Fixed issue with access DELETE on renaming files.
Jeremy.
(This used to be commit 0fcf167af898a9c7a20fddc0d95c887477a22ed1)
1998-07-17 00:47:16 +00:00
Jeremy Allison
dc44d77c7f Makefile: Added nttrans.o
includes.h: Added termios.h for AIX.
nttrans.c: Working NT SMB calls !
pipes.c: Use strequal instead of strcmp.
server.c: Use #defines rather than numbers.
smb.h: Updated NT SMB #defines.
Jeremy.
(This used to be commit 3e5cada9885059e9926eb6a56d350c4b1b53d245)
1998-07-16 22:46:06 +00:00
Jeremy Allison
f1cd3cb54c Makefile: Added CC=gcc to DGUX on Intel. Comment from ross@filmworks.com.
ipc.c:
loadparm.c:
printing.c:
           Added code from <Dirk.DeWachter@rug.ac.be> to implement print
           queue pausing. New parameters are "queuepause command" and
           "queueresume command".
util.c: Added fix for mount options in autmount map.
lib/rpc/include/rpc_misc.h: Removed duplicate pipe names for Jean-Francois.
Jeremy.
(This used to be commit 559a9bf2bbdeae3e76ba9178779cd3a9537c4e91)
1998-07-16 00:06:29 +00:00
Christopher R. Hertel
7ade0aa1d2 util.c: I've added a function called mem_dup(). Similar to strdup(),
mem_dup() allocates the required memory before copying the
         source data.  It returns NULL if memory could not be allcoated,
         else a pointer to the newly allocated memory.
proto.h: Rebuilt to add the prototype for mem_dup().
(This used to be commit 7f7e265ab457d046441d502d4b8447bc2c966675)
1998-07-15 20:15:25 +00:00
Jeremy Allison
ebad4278b7 nntrans.c: Fully implemented transact rename.
reply.c: Added NT specific rename if exists flag to rename_internals().
smb.h: Added NT rename flag.
Jeremy.
(This used to be commit b398f7daf58459db6e8d3496502abeb634ac2183)
1998-07-11 01:25:02 +00:00