Age | Commit message (Collapse) | Author | Files | Lines |
|
we should serve up volume labels as ascii or unicode.
NT wants ascii, W95 wants unicode. It's a crazy protocol!
(This used to be commit 24b8a757ae2899d54dd2b2f091a3c0de6de84dbb)
|
|
Note to coders. If using gcc please use the compiler flags :
-Wall -Werror -Wshadow -Wstrict-prototypes -Wpointer-arith -Wcast-qual
*before* checking anything in to ensure a clean compile.
Jeremy.
(This used to be commit 1daf424da6c5a346f672121d4b6fe5753250f464)
|
|
(This used to be commit 9a5bdf5c1bef689fe0d6879949df869efbc34783)
|
|
fix problems in builds with srcdir!=builddir
(This used to be commit 1ffc3b807a3f80644c974b454ff5e6f68e89b546)
|
|
(This used to be commit 23484508a86a59a71e54a1bcac3766ec3858142a)
|
|
(This used to be commit ac48db7f2130c29a25185bc5450f94811cc54640)
|
|
1) use lp_fstype() instead of FSTYPE_STRING
2) added SMB_SEARCH_BITS to the TconX reply options (in vwv3). I noted
that NT sets this (undocumented) bit and setting it helped get
autorun from exported cdroms working.
3) fixed volume labels in QFSINFO level 258.
I made these changes while getting the Encyclopadia Brittanica CD to
run from a Samba drive. (I bought it for Sue yesterday). The first
and second changes allowed Samba to export CDs with autorun info and
the client will autorun it when mounted. There are all sorts of nasty
implications in that that perhaps we can go into on
samba-technical. Think about creating some autorun info in /tmp/ then
waiting for people to mount it as scratch space ...
The last change was because EB wanted the right volume label. The code
we had used a non unicode volume label but tests with W95->NT4 showed
that it has to be unicode. There was a note in the code from Jeremy
saying that he thought it should _not_ be unicode. Jeremy, can you
explain why? It certainly didn't work as non-unicode (the client
displays a garbage volume label) and when I fixed it to use unicode it
all worked from Win95.
and in case anyone is interested EB98 now works fine from a Samba
drive :)
(This used to be commit 66268ae5881f43fbdc1ccd751122ab2285c375ad)
|
|
filesystem type that will be reported to the client. If unspecified
then it defaults to FSTYPE_STRING (currently "Samba").
This is useful for cdroms where you want to set the fs type to CDFS.
(This used to be commit 4332e2c93d69c6ea4035c456cc88d1e69de1e735)
|
|
(This used to be commit 9c275bcd98cbbd9367d9b7a2204889fcefd74638)
|
|
correct, the other needed slightly changing.
Now to test it is all OK :-)
(This used to be commit d54c91598c24e89a999936f446be134137df5dea)
|
|
unix_convert() was a single '\' (the base directory of the service)
that it gets translated to a '.', not a '\0'.
Jeremy.
(This used to be commit f74f39f45fa55c1768d6622a52c494328f22f50b)
|
|
slow down my benchmark :-).
Jeremy.
(This used to be commit b55f93b213ee61c35e7a87a2be63191d55186bd6)
|
|
me, I'm adding the HAVE_LIBREADLINE and other stuff correctly.
Thanks Alexandre :-).
Jeremy.
(This used to be commit 89a4a73caf474e59f239f50ad6d93e5df66ae300)
|
|
being done *before* the LARGE_SMB_OFF_T was being defined, but SOFF_T
depended on it :-).
This broke 64 bit file reporting.
Jeremy.
(This used to be commit c6a353cfabd99be0ce5bf508d716216443a44c20)
|
|
Jeremy.
(This used to be commit 43ac52ad7a3c1da3c25a63d0458c87f9367453ec)
|
|
The ./configure & build now seem to work ok.
Jeremy.
(This used to be commit 7c1a5ed1c2a55543d3f3c8bbd38e6c9c35b80390)
|
|
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.
(This used to be commit f939efac9e6c45331b17e3d3aa6bc2235e886c1a)
|
|
Jeremy.
(This used to be commit dbd8ce8a7053b6ea051e9bbdd0ddc27f1e0cb7c2)
|
|
save, so it started saving weird filenames (from an unitialised
fstring).
chaos reigns!
(This used to be commit 20a550d61e322cc9a0acfdf8fb974dafe0cd9603)
|
|
surrounded by a OLD_DOTARPUT.
(This used to be commit 00ba54d4ee9ad875c5cfbee09d4b745df5f116ab)
|
|
structures that only apply on some platforms.
(This used to be commit 926591067cd8646426ca06df0b00a1d6f6dd5752)
|
|
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.
(This used to be commit 4e784b18899eddd2399a51fa7d8c219560432922)
|
|
#ifdefs for LARGE_OFF_T.
(This used to be commit 724b9508c2d15bafdad5912fce702108fdd4cac3)
|
|
(This used to be commit 3e77d94cd2d693490265b60ad7c576a25902d8ea)
|
|
(a grep doesn't show any more)
(This used to be commit c1bd188744b0df950f2e00550c25f7d3e148094b)
|
|
(This used to be commit 24ae7657011929fd3529caa909f3afe866186cd2)
|
|
suffix from some constants.
(This used to be commit 84956eddf32aa66c787ec76bdb60d2843fa7a025)
|
|
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.
(This used to be commit 14c134e8316687aa5a4ee089c2acfa6428faceae)
|
|
script/mkproto.awk: Added SMB_BIG_UINT.
Jeremy.
(This used to be commit c22c40f0caa7d6a9e8120e6415fa728db708db3e)
|
|
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.
(This used to be commit c512b1b91fb7f2a7a93b9033a33e06d966daadb4)
|
|
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.
(This used to be commit c381d32e3dc23fe887408016cae821aceb30da2c)
|
|
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.
(This used to be commit 9c8ecd994d43ec64f46ef54e608acb651a9d67e1)
|
|
non-writeable for some reason.
(This used to be commit 9edd43dcd6cc040416f11e00320c53682558fd8a)
|
|
expected. wins_write_database() didn't exit after doing its stuff, so
when it returned you had two copies of nmbd :)
(This used to be commit 5e6488d4830016ea720a644c1b1ae25b336d3b8b)
|
|
(This used to be commit 31b4048362c63ab19e9ef35453c3763eec8b8f2b)
|
|
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.
(This used to be commit 1e1a512e3ff59f962fb3de382f671618bed60839)
|
|
calls to strlen() a profiling hotspot.
Jeremy.
(This used to be commit ffa450acddb7aec6a440ae3fe6032c109805d176)
|
|
Jeremy.
(This used to be commit 4a62b73633b8f8707a2961b355d4997f429c86bc)
|
|
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.
(This used to be commit 68750d8153f01bd0802bb86e93c3ca5d11acb199)
|
|
Problems were just dumb bugs like (defining sys_lseek to return 'int' DOH !).
Jeremy.
(This used to be commit 54dd51176fbab18af0b21bdee71b53f8f86573a8)
|
|
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.
(This used to be commit 1654faee80648583e6a47ab7eda990fefdf85124)
|
|
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.
(This used to be commit 36544fe5476f7770bd5748574fc54be7b3ee4d4a)
|
|
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.
(This used to be commit 069efc04545d5fdfc5c40467b8b7554ed5226a2e)
|
|
written continuously rather than once every 5 seconds (at most).
also changed it to 20 seconds :)
(This used to be commit 1b07de7079e81da9c0b930bdc30ae0451b57d53a)
|
|
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.
(This used to be commit 02b3fddce33a58a4db2102670b502fc0c6f45fab)
|
|
Chris -)-----
(This used to be commit ac13c29d46f564fc340b652b4b71dfa92e4b5b16)
|
|
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.
(This used to be commit 0de01f45980c7bc261248a9cead972a8d8cbd594)
|
|
(This used to be commit 46301b1d2161317f56049934a9e7b658447b2c76)
|
|
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.
(This used to be commit c83f3775cd8a7aad13571926cdd5949a07538771)
|
|
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.
(This used to be commit c96b5fde5ae12bd0d4d6bcff095cf090738c92a4)
|