svn commit: samba r11731 - in branches/SAMBA_4_0/source/libcli/smb2: .
Author: tridge Date: 2005-11-15 05:28:30 + (Tue, 15 Nov 2005) New Revision: 11731 WebSVN: http://websvn.samba.org/cgi-bin/viewcvs.cgi?view=rev&root=samba&rev=11731 Log: fixed typo noticed by metze Modified: branches/SAMBA_4_0/source/libcli/smb2/getinfo.c Changeset: Modified: branches/SAMBA_4_0/source/libcli/smb2/getinfo.c === --- branches/SAMBA_4_0/source/libcli/smb2/getinfo.c 2005-11-15 04:38:59 UTC (rev 11730) +++ branches/SAMBA_4_0/source/libcli/smb2/getinfo.c 2005-11-15 05:28:30 UTC (rev 11731) @@ -252,8 +252,8 @@ if (blob.length != 0x08) { return NT_STATUS_INFO_LENGTH_MISMATCH; } - io->standard_info.file_attr = IVAL(blob.data, 0x00); - io->standard_info.unknown = IVAL(blob.data, 0x04); + io->attrib_info.file_attr = IVAL(blob.data, 0x00); + io->attrib_info.unknown = IVAL(blob.data, 0x04); break; case SMB2_GETINFO_SECURITY: {
svn commit: samba r11730 - in branches/SAMBA_4_0/source: libcli/raw libcli/smb2 torture torture/smb2
Author: tridge Date: 2005-11-15 04:38:59 + (Tue, 15 Nov 2005) New Revision: 11730 WebSVN: http://websvn.samba.org/cgi-bin/viewcvs.cgi?view=rev&root=samba&rev=11730 Log: added parsing and tests for a bunch more SMB2 getinfo levels Added: branches/SAMBA_4_0/source/torture/smb2/getinfo.c branches/SAMBA_4_0/source/torture/smb2/util.c Modified: branches/SAMBA_4_0/source/libcli/raw/rawfileinfo.c branches/SAMBA_4_0/source/libcli/smb2/getinfo.c branches/SAMBA_4_0/source/libcli/smb2/smb2_calls.h branches/SAMBA_4_0/source/torture/smb2/config.mk branches/SAMBA_4_0/source/torture/smb2/connect.c branches/SAMBA_4_0/source/torture/smb2/scan.c branches/SAMBA_4_0/source/torture/torture.c branches/SAMBA_4_0/source/torture/torture_util.c Changeset: Sorry, the patch is too large (988 lines) to include; please use WebSVN to see it! WebSVN: http://websvn.samba.org/cgi-bin/viewcvs.cgi?view=rev&root=samba&rev=11730
Build status as of Tue Nov 15 00:00:02 2005
URL: http://build.samba.org/ --- /home/build/master/cache/broken_results.txt.old 2005-11-14 00:00:09.0 + +++ /home/build/master/cache/broken_results.txt 2005-11-15 00:00:34.0 + @@ -1,17 +1,17 @@ -Build status as of Mon Nov 14 00:00:04 2005 +Build status as of Tue Nov 15 00:00:02 2005 Build counts: Tree Total Broken Panic ccache 10 2 0 -distcc 12 2 0 -lorikeet-heimdal 16 16 0 +distcc 11 2 0 +lorikeet-heimdal 14 14 0 ppp 16 0 0 rsync35 2 0 -samba4 0 0 +samba3 0 0 samba-docs 0 0 0 -samba4 35 21 0 -samba_3_034 8 0 +samba4 35 20 0 +samba_3_034 7 0 smb-build27 5 0 -talloc 11 6 0 -tdb 10 2 0 +talloc 10 6 0 +tdb 9 2 0
svn commit: samba r11729 - branches/SAMBA_3_0/source trunk/source
Author: tpot Date: 2005-11-14 23:09:46 + (Mon, 14 Nov 2005) New Revision: 11729 WebSVN: http://websvn.samba.org/cgi-bin/viewcvs.cgi?view=rev&root=samba&rev=11729 Log: Remove space from DYNEXP flags declaration for HPUX. Fixes bugzilla #3260. Modified: branches/SAMBA_3_0/source/configure.in trunk/source/configure.in Changeset: Modified: branches/SAMBA_3_0/source/configure.in === --- branches/SAMBA_3_0/source/configure.in 2005-11-14 21:18:09 UTC (rev 11728) +++ branches/SAMBA_3_0/source/configure.in 2005-11-14 23:09:46 UTC (rev 11729) @@ -1480,10 +1480,10 @@ fi if test "$host_cpu" = "ia64"; then SHLIBEXT="so" - DYNEXP="-Wl,-E,+b /usr/local/lib/hpux32:/usr/lib/hpux32" + DYNEXP="-Wl,-E,+b/usr/local/lib/hpux32:/usr/lib/hpux32" else SHLIBEXT="sl" - DYNEXP="-Wl,-E,+b /usr/local/lib:/usr/lib" + DYNEXP="-Wl,-E,+b/usr/local/lib:/usr/lib" fi AC_DEFINE(STAT_ST_BLOCKSIZE,8192,[The size of a block]) AC_DEFINE(POSIX_ACL_NEEDS_MASK,1,[Does a POSIX ACL need a mask element]) Modified: trunk/source/configure.in === --- trunk/source/configure.in 2005-11-14 21:18:09 UTC (rev 11728) +++ trunk/source/configure.in 2005-11-14 23:09:46 UTC (rev 11729) @@ -1480,10 +1480,10 @@ fi if test "$host_cpu" = "ia64"; then SHLIBEXT="so" - DYNEXP="-Wl,-E,+b /usr/local/lib/hpux32:/usr/lib/hpux32" + DYNEXP="-Wl,-E,+b/usr/local/lib/hpux32:/usr/lib/hpux32" else SHLIBEXT="sl" - DYNEXP="-Wl,-E,+b /usr/local/lib:/usr/lib" + DYNEXP="-Wl,-E,+b/usr/local/lib:/usr/lib" fi AC_DEFINE(STAT_ST_BLOCKSIZE,8192,[The size of a block]) AC_DEFINE(POSIX_ACL_NEEDS_MASK,1,[Does a POSIX ACL need a mask element])
svn commit: samba r11728 - branches/SAMBA_3_0/source/script trunk/source/script
Author: lmuelle Date: 2005-11-14 21:18:09 + (Mon, 14 Nov 2005) New Revision: 11728 WebSVN: http://websvn.samba.org/cgi-bin/viewcvs.cgi?view=rev&root=samba&rev=11728 Log: Ensure to check for the config.log in ${SRCDIR}. Revert jerry's revert from 11685. :) At the moment I don't see a way to check if there is an empty ${SMBWRAPPER} or none. If there is a way to check if ${SMBWRAPPER} isn't set at all we could make the installman script even work if config.log does not exist. Modified: branches/SAMBA_3_0/source/script/installman.sh trunk/source/script/installman.sh Changeset: Modified: branches/SAMBA_3_0/source/script/installman.sh === --- branches/SAMBA_3_0/source/script/installman.sh 2005-11-14 20:13:00 UTC (rev 11727) +++ branches/SAMBA_3_0/source/script/installman.sh 2005-11-14 21:18:09 UTC (rev 11728) @@ -18,6 +18,10 @@ exit 0 fi +# Get the configured feature set +test -f "${SRCDIR}/config.log" && \ + eval $( grep "^[[:alnum:]]*=.*" "${SRCDIR}/config.log") + for lang in $langs; do if [ "X$lang" = XC ]; then echo Installing default man pages in $MANDIR/ @@ -40,13 +44,20 @@ for sect in 1 5 7 8 ; do for m in $langdir/man$sect ; do for s in $SRCDIR../docs/manpages/$lang/*$sect; do - FNAME=$m/`basename $s` - + MP_BASENAME=${s##*/} + + # Check if this man page if required by the configured feature set + case "${MP_BASENAME}" in + smbsh.1) test -z "${SMBWRAPPER}" && continue ;; + *) ;; + esac + + FNAME="$m/${MP_BASENAME}" + # Test for writability. Involves # blowing away existing files. if (rm -f $FNAME && touch $FNAME); then - rm $FNAME if [ "x$GROFF" = x ] ; then cp $s $m# Copy raw nroff else Modified: trunk/source/script/installman.sh === --- trunk/source/script/installman.sh 2005-11-14 20:13:00 UTC (rev 11727) +++ trunk/source/script/installman.sh 2005-11-14 21:18:09 UTC (rev 11728) @@ -19,8 +19,8 @@ fi # Get the configured feature set -test -f config.log && \ - eval $( grep "^[[:alnum:]]*=.*" config.log) +test -f "${SRCDIR}/config.log" && \ + eval $( grep "^[[:alnum:]]*=.*" "${SRCDIR}/config.log") for lang in $langs; do if [ "X$lang" = XC ]; then
svn commit: samba r11727 - in branches/SAMBA_4_0/source/winbind: .
Author: vlendec Date: 2005-11-14 20:13:00 + (Mon, 14 Nov 2005) New Revision: 11727 WebSVN: http://websvn.samba.org/cgi-bin/viewcvs.cgi?view=rev&root=samba&rev=11727 Log: Minor cleanup Modified: branches/SAMBA_4_0/source/winbind/wb_async_helpers.c Changeset: Modified: branches/SAMBA_4_0/source/winbind/wb_async_helpers.c === --- branches/SAMBA_4_0/source/winbind/wb_async_helpers.c2005-11-14 19:36:46 UTC (rev 11726) +++ branches/SAMBA_4_0/source/winbind/wb_async_helpers.c2005-11-14 20:13:00 UTC (rev 11727) @@ -311,30 +311,21 @@ struct get_schannel_creds_state); state->ctx->status = dcerpc_ndr_request_recv(req); - if (!NT_STATUS_IS_OK(state->ctx->status)) goto done; + if (!composite_is_ok(state->ctx)) return; state->ctx->status = state->a.out.result; - if (!NT_STATUS_IS_OK(state->ctx->status)) goto done; + if (!composite_is_ok(state->ctx)) return; if (!creds_client_check(state->creds_state, state->a.out.credentials)) { DEBUG(5, ("Server got us invalid creds\n")); - state->ctx->status = NT_STATUS_UNSUCCESSFUL; - goto done; + composite_error(state->ctx, NT_STATUS_UNSUCCESSFUL); + return; } cli_credentials_set_netlogon_creds(state->wks_creds, state->creds_state); - state->ctx->state = COMPOSITE_STATE_DONE; - - done: - if (!NT_STATUS_IS_OK(state->ctx->status)) { - state->ctx->state = COMPOSITE_STATE_ERROR; - } - if ((state->ctx->state >= COMPOSITE_STATE_DONE) && - (state->ctx->async.fn != NULL)) { - state->ctx->async.fn(state->ctx); - } + composite_done(state->ctx); } NTSTATUS wb_get_schannel_creds_recv(struct composite_context *c,
svn commit: samba r11726 - in trunk/source: .
Author: vlendec Date: 2005-11-14 19:36:46 + (Mon, 14 Nov 2005) New Revision: 11726 WebSVN: http://websvn.samba.org/cgi-bin/viewcvs.cgi?view=rev&root=samba&rev=11726 Log: Merge aclocal.m4 from 3_0 Modified: trunk/source/aclocal.m4 Changeset: Modified: trunk/source/aclocal.m4 === --- trunk/source/aclocal.m4 2005-11-14 14:17:24 UTC (rev 11725) +++ trunk/source/aclocal.m4 2005-11-14 19:36:46 UTC (rev 11726) @@ -56,7 +56,7 @@ [$6] string_shared_modules="$string_shared_modules $1" elif test x"$DEST" = xSTATIC; then - [init_static_modules_]translit([$4], [A-Z], [a-z])="$[init_static_modules_]translit([$4], [A-Z], [a-z]) NTSTATUS $1_init();" + [init_static_modules_]translit([$4], [A-Z], [a-z])="$[init_static_modules_]translit([$4], [A-Z], [a-z]) $1_init();" string_static_modules="$string_static_modules $1" $4_STATIC="$$4_STATIC $2" AC_SUBST($4_STATIC)
svn commit: samba r11725 - branches/SAMBA_3_0/source trunk/source
Author: jerry Date: 2005-11-14 14:17:24 + (Mon, 14 Nov 2005) New Revision: 11725 WebSVN: http://websvn.samba.org/cgi-bin/viewcvs.cgi?view=rev&root=samba&rev=11725 Log: build smbget by default Modified: branches/SAMBA_3_0/source/Makefile.in trunk/source/Makefile.in Changeset: Modified: branches/SAMBA_3_0/source/Makefile.in === --- branches/SAMBA_3_0/source/Makefile.in 2005-11-14 13:50:56 UTC (rev 11724) +++ branches/SAMBA_3_0/source/Makefile.in 2005-11-14 14:17:24 UTC (rev 11725) @@ -128,7 +128,7 @@ SBIN_PROGS = bin/[EMAIL PROTECTED]@ bin/[EMAIL PROTECTED]@ bin/[EMAIL PROTECTED]@ @EXTRA_SBIN_PROGS@ BIN_PROGS1 = bin/[EMAIL PROTECTED]@ bin/[EMAIL PROTECTED]@ bin/[EMAIL PROTECTED]@ \ - bin/[EMAIL PROTECTED]@ bin/[EMAIL PROTECTED]@ + bin/[EMAIL PROTECTED]@ bin/[EMAIL PROTECTED]@ bin/[EMAIL PROTECTED]@ BIN_PROGS2 = bin/[EMAIL PROTECTED]@ bin/[EMAIL PROTECTED]@ bin/[EMAIL PROTECTED]@ \ bin/[EMAIL PROTECTED]@ bin/[EMAIL PROTECTED]@ bin/[EMAIL PROTECTED]@ \ bin/[EMAIL PROTECTED]@ Modified: trunk/source/Makefile.in === --- trunk/source/Makefile.in2005-11-14 13:50:56 UTC (rev 11724) +++ trunk/source/Makefile.in2005-11-14 14:17:24 UTC (rev 11725) @@ -128,7 +128,7 @@ SBIN_PROGS = bin/[EMAIL PROTECTED]@ bin/[EMAIL PROTECTED]@ bin/[EMAIL PROTECTED]@ @EXTRA_SBIN_PROGS@ BIN_PROGS1 = bin/[EMAIL PROTECTED]@ bin/[EMAIL PROTECTED]@ bin/[EMAIL PROTECTED]@ \ - bin/[EMAIL PROTECTED]@ bin/[EMAIL PROTECTED]@ + bin/[EMAIL PROTECTED]@ bin/[EMAIL PROTECTED]@ bin/[EMAIL PROTECTED]@ BIN_PROGS2 = bin/[EMAIL PROTECTED]@ bin/[EMAIL PROTECTED]@ bin/[EMAIL PROTECTED]@ \ bin/[EMAIL PROTECTED]@ bin/[EMAIL PROTECTED]@ bin/[EMAIL PROTECTED]@ \ bin/[EMAIL PROTECTED]@
svn commit: samba r11724 - in branches/SAMBA_4_0/source: include smb_server
Author: metze Date: 2005-11-14 13:50:56 + (Mon, 14 Nov 2005) New Revision: 11724 WebSVN: http://websvn.samba.org/cgi-bin/viewcvs.cgi?view=rev&root=samba&rev=11724 Log: - move checks packet size and protocol version, before we create the request structure - move code into one function metze Modified: branches/SAMBA_4_0/source/include/smb.h branches/SAMBA_4_0/source/smb_server/smb_server.c Changeset: Modified: branches/SAMBA_4_0/source/include/smb.h === --- branches/SAMBA_4_0/source/include/smb.h 2005-11-14 13:31:47 UTC (rev 11723) +++ branches/SAMBA_4_0/source/include/smb.h 2005-11-14 13:50:56 UTC (rev 11724) @@ -204,6 +204,8 @@ /* 64 bit time (100 nanosec) 1601 - cifs6.txt, section 3.5, page 30, 4 byte aligned */ typedef uint64_t NTTIME; +#define SMB_MAGIC 0x424D53FF /* 0xFF 'S' 'M' 'B' */ + /* the basic packet size, assuming no words or bytes. Does not include the NBT header */ #define MIN_SMB_SIZE 35 Modified: branches/SAMBA_4_0/source/smb_server/smb_server.c === --- branches/SAMBA_4_0/source/smb_server/smb_server.c 2005-11-14 13:31:47 UTC (rev 11723) +++ branches/SAMBA_4_0/source/smb_server/smb_server.c 2005-11-14 13:50:56 UTC (rev 11724) @@ -62,9 +62,8 @@ return True; } +static void switch_message(int type, struct smbsrv_request *req); -static void construct_reply(struct smbsrv_request *req); - / receive a SMB request header from the wire, forming a request_context from the result @@ -73,12 +72,40 @@ { struct smbsrv_connection *smb_conn = talloc_get_type(private, struct smbsrv_connection); struct smbsrv_request *req; + uint8_t command; - req = init_smb_request(smb_conn); - if (req == NULL) { - return NT_STATUS_NO_MEMORY; + /* see if its a special NBT packet */ + if (CVAL(blob.data, 0) != 0) { + req = init_smb_request(smb_conn); + NT_STATUS_HAVE_NO_MEMORY(req); + + ZERO_STRUCT(req->in); + + req->in.buffer = talloc_steal(req, blob.data); + req->in.size = blob.length; + req->request_time = timeval_current(); + + reply_special(req); + return NT_STATUS_OK; } + if ((NBT_HDR_SIZE + MIN_SMB_SIZE) > blob.length) { + DEBUG(2,("Invalid SMB packet: length %d\n", blob.length)); + smbsrv_terminate_connection(smb_conn, "Invalid SMB packet"); + return NT_STATUS_OK; + } + + /* Make sure this is an SMB packet */ + if (IVAL(blob.data, NBT_HDR_SIZE) != SMB_MAGIC) { + DEBUG(2,("Non-SMB packet of length %d. Terminating connection\n", +blob.length)); + smbsrv_terminate_connection(smb_conn, "Non-SMB packet"); + return NT_STATUS_OK; + } + + req = init_smb_request(smb_conn); + NT_STATUS_HAVE_NO_MEMORY(req); + req->in.buffer = talloc_steal(req, blob.data); req->in.size = blob.length; req->request_time = timeval_current(); @@ -105,8 +132,29 @@ } } - construct_reply(req); + if (NBT_HDR_SIZE + MIN_SMB_SIZE + 2*req->in.wct > req->in.size) { + DEBUG(2,("Invalid SMB word count %d\n", req->in.wct)); + smbsrv_terminate_connection(req->smb_conn, "Invalid SMB packet"); + return NT_STATUS_OK; + } + + if (NBT_HDR_SIZE + MIN_SMB_SIZE + 2*req->in.wct + req->in.data_size > req->in.size) { + DEBUG(2,("Invalid SMB buffer length count %d\n", req->in.data_size)); + smbsrv_terminate_connection(req->smb_conn, "Invalid SMB packet"); + return NT_STATUS_OK; + } + req->flags = CVAL(req->in.hdr, HDR_FLG); + req->flags2 = SVAL(req->in.hdr, HDR_FLG2); + req->smbpid = SVAL(req->in.hdr, HDR_PID); + + if (!req_signing_check_incoming(req)) { + req_reply_error(req, NT_STATUS_ACCESS_DENIED); + return NT_STATUS_OK; + } + + command = CVAL(req->in.hdr, HDR_COM); + switch_message(command, req); return NT_STATUS_OK; } @@ -514,53 +562,6 @@ smb_messages[type].fn(req); } - -/ - Construct a reply to the incoming packet. -/ -static void construct_reply(struct smbsrv_request *req) -{ - uint8_t type = CVAL(req->in.hdr,HDR_COM); - - /* see if its a special NBT packet */ - if (CVAL(req->in.buffer,0) != 0) { - reply_special(req); - return; - } - - /* Make sure this is an SMB packet */ - if (memcmp(req
svn commit: samba r11723 - in branches/SAMBA_4_0/source/include: .
Author: metze Date: 2005-11-14 13:31:47 + (Mon, 14 Nov 2005) New Revision: 11723 WebSVN: http://websvn.samba.org/cgi-bin/viewcvs.cgi?view=rev&root=samba&rev=11723 Log: fix the build metze Modified: branches/SAMBA_4_0/source/include/structs.h Changeset: Modified: branches/SAMBA_4_0/source/include/structs.h === --- branches/SAMBA_4_0/source/include/structs.h 2005-11-14 12:31:02 UTC (rev 11722) +++ branches/SAMBA_4_0/source/include/structs.h 2005-11-14 13:31:47 UTC (rev 11723) @@ -154,6 +154,8 @@ struct auth_method_context; struct request_buffer; +struct smb2_request_buffer; + struct ntvfs_context; struct ntvfs_module_context;
svn commit: samba r11722 - in branches/SAMBA_4_0/source/libcli/smb2: .
Author: metze Date: 2005-11-14 12:31:02 + (Mon, 14 Nov 2005) New Revision: 11722 WebSVN: http://websvn.samba.org/cgi-bin/viewcvs.cgi?view=rev&root=samba&rev=11722 Log: make the smb2_push/pull functions take a smb2_request_buffer and the pull ones also a TALLOC_CTX, then we can reuse this functions in the server later metze Modified: branches/SAMBA_4_0/source/libcli/smb2/getinfo.c branches/SAMBA_4_0/source/libcli/smb2/negprot.c branches/SAMBA_4_0/source/libcli/smb2/read.c branches/SAMBA_4_0/source/libcli/smb2/request.c branches/SAMBA_4_0/source/libcli/smb2/session.c branches/SAMBA_4_0/source/libcli/smb2/tcon.c branches/SAMBA_4_0/source/libcli/smb2/write.c Changeset: Sorry, the patch is too large (255 lines) to include; please use WebSVN to see it! WebSVN: http://websvn.samba.org/cgi-bin/viewcvs.cgi?view=rev&root=samba&rev=11722