summaryrefslogtreecommitdiffstats
path: root/source
Commit message (Collapse)AuthorAgeFilesLines
* configure configure.in include/config.h.in include/includes.hJeremy Allison1998-09-188-217/+428
| | | | | | | | | | Fixed bugs in readline autoconf. param/loadparm.c smbd/open.c smbd/oplock.c: Started on kernel oplock code - checking forced by above issue. Should not be used currently. Jeremy.
* Fixed compile errors in new code.Jeremy Allison1998-09-181-3/+3
| | | | Jeremy.
* oops ... I got the filenames wrong in my cleanup of the wins databaseAndrew Tridgell1998-09-181-1/+2
| | | | | | | save, so it started saving weird filenames (from an unitialised fstring). chaos reigns!
* Adding rewritten restore code ... Old code is still thereRichard Sharpe1998-09-183-69/+496
| | | | surrounded by a OLD_DOTARPUT.
* got rid of SMB_STRUCT_STATVFS. I don't think we should be definingAndrew Tridgell1998-09-184-36/+7
| | | | structures that only apply on some platforms.
* gto ri of a bunch more #ifdef LARGE_SMB_OFF_T checks by introducing aAndrew Tridgell1998-09-187-84/+49
| | | | | | | SOFF_T() macro for setting an SMB_OFF_T variable also limited mmap based reads to MAX_MMAP_SIZE. We really can't mmap 2^50 bytes due to virtual address space problems.
* added a SMB_OFF_T_BITS define, allowing us to get rid of most of theAndrew Tridgell1998-09-181-0/+2
| | | | #ifdefs for LARGE_OFF_T.
* fixed a typo (LLARGE_SMB_OFF_T instead of LARGE_SMB_OFF_T)Andrew Tridgell1998-09-181-1/+1
|
* removed another use of the LL suffix. Hopefully this is the last oneAndrew Tridgell1998-09-181-21/+19
| | | | (a grep doesn't show any more)
* fixed a usage of off_t that should have been SMB_OFF_TAndrew Tridgell1998-09-181-1/+1
|
* got rid of some #ifdef LARGE_XXXX stuff and got rid of non-portable LLAndrew Tridgell1998-09-181-15/+4
| | | | suffix from some constants.
* include/includes.h:Jeremy Allison1998-09-183-3/+10
| | | | | | | lib/system.c: Can't assume every system has a statvfs varient. Return -1 for those that don't. smbd/reply.c: Fixed printf warning. Jeremy.
* nmbd/nmbd_winsserver.c: Fixed printf style warning.Jeremy Allison1998-09-183-2/+3
| | | | | script/mkproto.awk: Added SMB_BIG_UINT. Jeremy.
* configure configure.in: Added checks for statvfs64. Last bit of 64 bit ↵Jeremy Allison1998-09-1722-98/+206
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | widening (I hope :-). include/config.h.in: Added #undef STAT_STATVFS64. include/includes.h: Added SMB_STRUCT_STATVFS type, Changed SMB_BIG_INTEGER to SMB_BIG_UINT and SMB_BIG_INT types. include/smb.h: Added flag defines from CIFS spec. lib/debug.c: Fixed one more mode_t issue. lib/system.c: Added sys_statvfs wrapper. lib/util.c: Changed trim_string to use size_t. param/loadparm.c: Moved "blocking locks" into locking section. Alphabetised locking options. Question - shuld we do this for all options ? passdb/ldap.c: Changed SMB_BIG_INTEGER to SMB_BIG_UINT. passdb/nispass.c: Changed SMB_BIG_INTEGER to SMB_BIG_UINT. passdb/smbpass.c: Changed SMB_BIG_INTEGER to SMB_BIG_UINT. smbd/dfree.c: Changed to use 64 bit types if available. Moved to use unsigned types. smbd/dosmode.c: Fixed one more mode_t issue. smbd/negprot.c: Changed literals to be FLAG_ #defines. smbd/nttrans.c: Removed dead code. smbd/open.c: Changed disk_free call. smbd/process.c: Changed literals to be FLAG_ #defines. smbd/reply.c: Changed disk_free call. smbd/trans2.c: Fixed but in SMB_QUERY_FS_VOLUME_INFO call. Was using UNICODE - should use ascii. tests/summary.c: Added STAT_STATVFS64 check. Jeremy.
* configure configure.in: Added tests for fseek64 and ftell64.Jeremy Allison1998-09-1721-91/+100
| | | | | | | | | | | | | | | | | | | | | | | config.h.in: Added fseek64 and ftell64. includes.h: Added definition of SMB_BIG_INTEGER. smb.h: Changed (*getsmbpwpos) and (*setsmbpwpos) to use SMB_BIG_INTEGER. access.c: Tidyup of dbug statement. system.c: Added sys_fseek and sys_ftell. Changed mode calls to use mode_t. asyncdns.c: Tidyup of comment. loadparm.c: Tidyup of set_default_server_announce_type() function definition. ldap.c: Changed (*getsmbpwpos) and (*setsmbpwpos) to use SMB_BIG_INTEGER. nispass.c: Changed (*getsmbpwpos) and (*setsmbpwpos) to use SMB_BIG_INTEGER. smbpass.c: Changed (*getsmbpwpos) and (*setsmbpwpos) to use SMB_BIG_INTEGER. smbpassfile.c: Use sys_fseek(). chgpasswd.c: Tidyup of debug statement. dosmode.c: Changed mode calls to use mode_t. ipc.c: Removal of dead code. nttrans.c: Changed mode calls to use mode_t. open.c: Changed mode calls to use mode_t. pipes.c: Removal of dead code. reply.c: Removal of dead code. trans2.c: Removal of dead code. Changed mode calls to use mode_t. Jeremy.
* configure, configure.in: Added fseek64 and ftell64.Jeremy Allison1998-09-171-2/+2
| | | | | | | | | | | | | | | | | | | | | | | config.h.in: Added fseek64 and ftell64. includes.h: Added definition of SMB_BIG_INTEGER. smb.h: Changed (*getsmbpwpos) and (*setsmbpwpos) to use SMB_BIG_INTEGER. access.c: Tidyup of dbug statement. system.c: Added sys_fseek and sys_ftell. Changed mode calls to use mode_t. asyncdns.c: Tidyup of comment. loadparm.c: Tidyup of set_default_server_announce_type() function definition. ldap.c: Changed (*getsmbpwpos) and (*setsmbpwpos) to use SMB_BIG_INTEGER. nispass.c: Changed (*getsmbpwpos) and (*setsmbpwpos) to use SMB_BIG_INTEGER. smbpass.c: Changed (*getsmbpwpos) and (*setsmbpwpos) to use SMB_BIG_INTEGER. smbpassfile.c: Use sys_fseek(). chgpasswd.c: Tidyup of debug statement. dosmode.c: Changed mode calls to use mode_t. ipc.c: Removal of dead code. nttrans.c: Changed mode calls to use mode_t. open.c: Changed mode calls to use mode_t. pipes.c: Removal of dead code. reply.c: Removal of dead code. trans2.c: Removal of dead code. Changed mode calls to use mode_t. Jeremy.
* fixed another potential fork bomb where the wins file becomesAndrew Tridgell1998-09-172-0/+5
| | | | non-writeable for some reason.
* fixed the nmbd fork bomb. It was a silly mistake, asAndrew Tridgell1998-09-171-0/+3
| | | | | expected. wins_write_database() didn't exit after doing its stuff, so when it returned you had two copies of nmbd :)
* fixed a typo in my last commitAndrew Tridgell1998-09-171-1/+1
|
* fixed a potential problem with wins_write_database() child processes.Andrew Tridgell1998-09-174-19/+14
| | | | | | | | | In sig_term() we were calling wins_write_database(0) which would fork a child. This child might then get killed by the same process killing off the parent. That process would then fork another child etc. The solution is to pass a "background" flag to wins_write_database(0) and only fork if this is set.
* Removed hideous inefficiencies in old trim_string code. This was makingJeremy Allison1998-09-151-15/+22
| | | | | calls to strlen() a profiling hotspot. Jeremy.
* Mapped correct open modes for READ_CONTROL access.Jeremy Allison1998-09-141-2/+3
| | | | Jeremy.
* Fixed problems people were having with creating profileJeremy Allison1998-09-142-2/+14
| | | | | | | | | directories (NTTrans/Create with Security Descriptor for a directory). It turns out the CIFS spec is bogus (what a suprise) and the 'is a directory' flag is actually embedded in the create_options field. Jeremy.
* Ok so with this bugfix 64 bit file access actually seems to work :-).Jeremy Allison1998-09-117-13/+31
| | | | | | Problems were just dumb bugs like (defining sys_lseek to return 'int' DOH !). Jeremy.
* Ok - this is the 'expose 64 bit to the clients' checkin.Jeremy Allison1998-09-117-35/+105
| | | | | | | | | | I have tested it by creating a 'holey' 20GB file - checking that it shows up correctl in the NT file view (it does) and am busily copying it to NULL: on the NT box. All good so far.... :-). Also implemented NT 'delete on close' semantics. Jeremy.
* Added ssize_t to configure code.Jeremy Allison1998-09-1115-634/+608
| | | | | | | | | | | Got 'religion' about using size_t and ssize_t for read/write stuff as part of the code to expose 64 bits to the client. This checkin does all the 'easy' stuff - such as all the read/write/lock calls - but now comes the harder parts (open & friends) and all the file enquiry functions..... Jeremy.
* smb.h: Removed fdnum from file_fd_struct. Not needed.Jeremy Allison1998-09-102-30/+109
| | | | | | | files.c: Removed fd bitmap - not needed. Added code to do use arrays rather than linked list - disabled by default but can be enabled to check performance. Jeremy.
* fixed a bug in the wins database writer that caused the database to beAndrew Tridgell1998-09-101-3/+11
| | | | | | written continuously rather than once every 5 seconds (at most). also changed it to 20 seconds :)
* Improved stat cache code by uppercasing any search name that gets added toJeremy Allison1998-09-102-19/+17
| | | | | | | it if we're in case insensitive mode, and then doing a memcmp rather than a StrnCaseCmp (which is *horribly* slow) on every lookup. Fixed bug with refusing NT SMB's (use *brackets* where needed :-). Jeremy.
* Copyright notices written to debug logs are now through 1998.Christopher R. Hertel1998-09-092-2/+2
| | | | Chris -)-----
* Added back groupname map stuff removed by Andrew's "slash 'n' burn"Jeremy Allison1998-09-087-33/+69
| | | | | | | | | | | | | | | | | tactics :-). Protected by #ifdef until used. Fixed bug in fd_attempt_close() where a pointer to potentially free'd memory was returned. I hate that. Added "blocking locks" as a per-share option for performance testing. Changed is_mangled() so it will return true if called with a pathname and any component of the pathname was mangled (it was already attempting to do this, but not checking for a '/' as end-of-mangle). This should be a better fix for the wierd stat cache bug Andrew identified. Jeremy.
* added 0x10 to the frag length in the "bind ack".Luke Leighton1998-09-071-1/+1
|
* add a "stat cache" boolean smb.conf option. (defaults to on)Andrew Tridgell1998-09-063-2/+15
| | | | | | | | I think we need this so we can rule out stat cache bugs when dealing with bug reports. If we ask a user to disable the stat cache and the problem persists then we know it isn't a stat cache bug. The stat cache code is sufficiently complicated that it can be pretty hard to tell if it is causing problems or not.
* fixed a stat cache bug (the one found by Matthew Geier).Andrew Tridgell1998-09-051-1/+5
| | | | | | The fix I used is a very conservative fix. I'll leave it up to Jeremy to put in a better fix. The problem was the detection of mangled names.
* added a configuration summary at the end of ./configure. It alsoAndrew Tridgell1998-09-053-0/+55
| | | | aborts if essential functions are not available.
* expand the sysv shmem test to look for semaphores as well as sharedAndrew Tridgell1998-09-051-1/+21
| | | | | memory. Some FreeBSD systems have sysv shared memory but no semaphores!
* some cleanups to use ZERO_STRUCT() and friendsAndrew Tridgell1998-09-0513-21/+23
|
* some people are foolishly running ./configure from other than theAndrew Tridgell1998-09-056-75/+118
| | | | | source directory! This adds a new "trivial" test that makes sure that the autoconf tests are working. It aborts the configure run if not.
* ahh, the joy of deleting large chunks of code that someone else hasAndrew Tridgell1998-09-055-77/+0
| | | | | | | | painstakingly put in :) This gets rid of most of the #ifdef LARGE_SMB_INO_T ifdefs around DEBUG() statements. We just use %.0f in all cases. Makes the code a bit easier to read :)
* tridge the destroyer returns!Andrew Tridgell1998-09-0553-2783/+463
| | | | | | | | | | | | | | | | | | | | | | prompted by the interpret_security() dead code that Jean-Francois pointed out I added a make target "finddead" that finds potentially dead (ie. unused) code. It spat out 304 function names ... I went through these are deleted many of them, making others static (finddead also reports functions that are used only in the local file). in doing this I have almost certainly deleted some useful code. I may have even prevented compilation with some compile options. I apologise. I decided it was better to get rid of this code now and add back the one or two functions that are needed than to keep all this baggage. So, if I have done a bit too much "destroying" then let me know. Keep the swearing to a minimum :) One bit I didn't do is the ubibt code. Chris, can you look at that? Heaps of unused functions there. Can they be made static?
* Fixed one more Debug problem with inode in non-64 bit case.Jeremy Allison1998-09-051-1/+1
| | | | Jeremy.
* Bugfix for leak in reference counted file struct.Jeremy Allison1998-09-056-15/+19
| | | | | Added "nt smb support" parameter to allow NT SMB's to be turned off. Jeremy.
* got rid of interpret_security(). Thanks to Jean-Francois for pointingAndrew Tridgell1998-09-052-18/+0
| | | | out it is no longer used (replaced by enumerated types in loadparm.c)
* Modified dev_t and ino_t code to be 64 bit clean (including changesJeremy Allison1998-09-0410-134/+443
| | | | | | | | | | to oplock break message passing). I think that smbd/nmbd are now inode and offset size independent (at least for 32 bit and 64 bit systems). Now to expose all this new functionality to NT clients..... Jeremy.
* Fixed uppercasing of share name (pointed out by Jean-Francois).Jeremy Allison1998-09-041-1/+0
| | | | Jeremy.
* More 64 bit stuff - now the fcntl locks are 64 bit clean.Jeremy Allison1998-09-0413-173/+298
| | | | | | Nearly at the stage where I can expose the 64-bit-ness to the NT clients.... Jeremy.
* Ok - this is the 64 bit widening check in. It changes the configureJeremy Allison1998-09-0333-447/+632
| | | | | | | | | | | | | | | | | | | | | | | | | to check for stat64 and friends, and then changes much of Samba to use the data type SMB_OFF_T for file size information. stat/fstat/lstat/lseek/ftruncate have now become sys_stat etc. to hide the 64 bit calls if needed. Note that this still does not expose 64 bit functionality to the client, as the changes to the reply_xxx smb's are not yet done. This code change should make these changes possible. Still to do before full 64 bit-ness to the client: fcntl lock code. statfs code widening of dev_t and ino_t (now possible due to SMB_DEV_T and SMB_OFF_T types being in place). Let me know if wierd things happen after this check-in and I'll fix them :-). Jeremy.
* changed the SMBtrans reply code to align at the same alignment asAndrew Tridgell1998-09-031-13/+8
| | | | | | | | | observed from NT. We were aligning the data before but not the parameters. This aligns both. This change may break some other parts of ipc.c if we have relied on the alignment somewhere, so if you think this broke something then let me know.
* we were setting the strings 1 too long in make_srv_share_info1_str()Andrew Tridgell1998-09-031-2/+2
|
* fixed a bug in the name mangling code. It implicitly assumed thatAndrew Tridgell1998-09-033-45/+43
| | | | | | | | mangling a name can't increase it's size which isn't true. (imagine a file called "L B" which mangles to "LB~XX") The symptoms were that users couldn't run batch files from short directory names that contained non 8.3 characters (such as spaces).