diff options
| -rw-r--r-- | source3/lib/util.c | 83 | ||||
| -rw-r--r-- | source3/lib/util_seaccess.c | 19 | ||||
| -rw-r--r-- | source3/libsmb/clispnego.c | 34 | ||||
| -rw-r--r-- | source3/smbd/sesssetup.c | 2 | 
4 files changed, 67 insertions, 71 deletions
diff --git a/source3/lib/util.c b/source3/lib/util.c index 377457a714..51b92568b4 100644 --- a/source3/lib/util.c +++ b/source3/lib/util.c @@ -260,8 +260,8 @@ void show_msg(char *buf)  	int i;  	int bcc=0; -	if (DEBUGLEVEL < 5) return; - +	if (!DEBUGLVL(5)) return; +	  	DEBUG(5,("size=%d\nsmb_com=0x%x\nsmb_rcls=%d\nsmb_reh=%d\nsmb_err=%d\nsmb_flg=%d\nsmb_flg2=%d\n",  			smb_len(buf),  			(int)CVAL(buf,smb_com), @@ -270,31 +270,26 @@ void show_msg(char *buf)  			(int)SVAL(buf,smb_err),  			(int)CVAL(buf,smb_flg),  			(int)SVAL(buf,smb_flg2))); -	DEBUG(5,("smb_tid=%d\nsmb_pid=%d\nsmb_uid=%d\nsmb_mid=%d\nsmt_wct=%d\n", +	DEBUGADD(5,("smb_tid=%d\nsmb_pid=%d\nsmb_uid=%d\nsmb_mid=%d\n",  			(int)SVAL(buf,smb_tid),  			(int)SVAL(buf,smb_pid),  			(int)SVAL(buf,smb_uid), -			(int)SVAL(buf,smb_mid), -			(int)CVAL(buf,smb_wct))); +			(int)SVAL(buf,smb_mid))); +	DEBUGADD(5,("smt_wct=%d\n",(int)CVAL(buf,smb_wct)));  	for (i=0;i<(int)CVAL(buf,smb_wct);i++) -	{ -		DEBUG(5,("smb_vwv[%d]=%d (0x%X)\n",i, +		DEBUGADD(5,("smb_vwv[%2d]=%5d (0x%X)\n",i,  			SVAL(buf,smb_vwv+2*i),SVAL(buf,smb_vwv+2*i))); -	} - +	  	bcc = (int)SVAL(buf,smb_vwv+2*(CVAL(buf,smb_wct))); -	DEBUG(5,("smb_bcc=%d\n",bcc)); +	DEBUGADD(5,("smb_bcc=%d\n",bcc));  	if (DEBUGLEVEL < 10) return; -	if (DEBUGLEVEL < 50) -	{ -		bcc = MIN(bcc, 512); -	} +	if (DEBUGLEVEL < 50) bcc = MIN(bcc, 512); -	dump_data(10, smb_buf(buf), bcc); +	dump_data(10, smb_buf(buf), bcc);	  }  /******************************************************************* @@ -1574,35 +1569,35 @@ void print_asc(int level, const unsigned char *buf,int len)  void dump_data(int level, const char *buf1,int len)  { -  const unsigned char *buf = (const unsigned char *)buf1; -  int i=0; -  if (len<=0) return; - -  DEBUG(level,("[%03X] ",i)); -  for (i=0;i<len;) { -    DEBUG(level,("%02X ",(int)buf[i])); -    i++; -    if (i%8 == 0) DEBUG(level,(" ")); -    if (i%16 == 0) {       -      print_asc(level,&buf[i-16],8); DEBUG(level,(" ")); -      print_asc(level,&buf[i-8],8); DEBUG(level,("\n")); -      if (i<len) DEBUG(level,("[%03X] ",i)); -    } -  } -  if (i%16) { -    int n; - -    n = 16 - (i%16); -    DEBUG(level,(" ")); -    if (n>8) DEBUG(level,(" ")); -    while (n--) DEBUG(level,("   ")); - -    n = MIN(8,i%16); -    print_asc(level,&buf[i-(i%16)],n); DEBUG(level,(" ")); -    n = (i%16) - n; -    if (n>0) print_asc(level,&buf[i-n],n);  -    DEBUG(level,("\n"));     -  } +	const unsigned char *buf = (const unsigned char *)buf1; +	int i=0; +	if (len<=0) return; + +	if (!DEBUGLVL(level)) return; +	 +	DEBUGADD(level,("[%03X] ",i)); +	for (i=0;i<len;) { +		DEBUGADD(level,("%02X ",(int)buf[i])); +		i++; +		if (i%8 == 0) DEBUGADD(level,(" ")); +		if (i%16 == 0) {       +			print_asc(level,&buf[i-16],8); DEBUGADD(level,(" ")); +			print_asc(level,&buf[i-8],8); DEBUGADD(level,("\n")); +			if (i<len) DEBUGADD(level,("[%03X] ",i)); +		} +	} +	if (i%16) { +		int n; +		n = 16 - (i%16); +		DEBUGADD(level,(" ")); +		if (n>8) DEBUGADD(level,(" ")); +		while (n--) DEBUGADD(level,("   ")); +		n = MIN(8,i%16); +		print_asc(level,&buf[i-(i%16)],n); DEBUGADD(level,( " " )); +		n = (i%16) - n; +		if (n>0) print_asc(level,&buf[i-n],n);  +		DEBUGADD(level,("\n"));     +	}	  }  char *tab_depth(int depth) diff --git a/source3/lib/util_seaccess.c b/source3/lib/util_seaccess.c index 87711ff5ad..b137023e55 100644 --- a/source3/lib/util_seaccess.c +++ b/source3/lib/util_seaccess.c @@ -44,7 +44,7 @@ static BOOL token_sid_in_ace(const NT_USER_TOKEN *token, const SEC_ACE *ace)   bits not yet granted. Zero means permission allowed (no more needed bits).  **********************************************************************************/ -static uint32 check_ace(SEC_ACE *ace, NT_USER_TOKEN *token, uint32 acc_desired,  +static uint32 check_ace(SEC_ACE *ace, const NT_USER_TOKEN *token, uint32 acc_desired,   			NTSTATUS *status)  {  	uint32 mask = ace->info.mask; @@ -104,7 +104,7 @@ static uint32 check_ace(SEC_ACE *ace, NT_USER_TOKEN *token, uint32 acc_desired,   include other bits requested.  **********************************************************************************/  -static BOOL get_max_access( SEC_ACL *the_acl, NT_USER_TOKEN *token, uint32 *granted,  +static BOOL get_max_access( SEC_ACL *the_acl, const NT_USER_TOKEN *token, uint32 *granted,   			    uint32 desired,   			    NTSTATUS *status)  { @@ -264,12 +264,13 @@ BOOL se_access_check(SEC_DESC *sd, const NT_USER_TOKEN *token,  	}  	/* The user sid is the first in the token */ - -	DEBUG(3, ("se_access_check: user sid is %s\n", sid_to_string(sid_str, &token->user_sids[PRIMARY_USER_SID_INDEX]) )); - -	for (i = 1; i < token->num_sids; i++) { -		DEBUG(3, ("se_access_check: also %s\n", -			  sid_to_string(sid_str, &token->user_sids[i]))); +	if (DEBUGLVL(3)) { +		DEBUG(3, ("se_access_check: user sid is %s\n", sid_to_string(sid_str, &token->user_sids[PRIMARY_USER_SID_INDEX]) )); +		 +		for (i = 1; i < token->num_sids; i++) { +			DEBUGADD(3, ("se_access_check: also %s\n", +				  sid_to_string(sid_str, &token->user_sids[i]))); +		}  	}  	/* Is the token the owner of the SID ? */ @@ -299,7 +300,7 @@ BOOL se_access_check(SEC_DESC *sd, const NT_USER_TOKEN *token,  	for ( i = 0 ; i < the_acl->num_aces && tmp_acc_desired != 0; i++) {  		SEC_ACE *ace = &the_acl->ace[i]; -		DEBUG(10,("se_access_check: ACE %u: type %d, flags = 0x%02x, SID = %s mask = %x, current desired = %x\n", +		DEBUGADD(10,("se_access_check: ACE %u: type %d, flags = 0x%02x, SID = %s mask = %x, current desired = %x\n",  			  (unsigned int)i, ace->type, ace->flags,  			  sid_to_string(sid_str, &ace->trustee),  			  (unsigned int) ace->info.mask,  diff --git a/source3/libsmb/clispnego.c b/source3/libsmb/clispnego.c index 1eeae8b171..fc25436d10 100644 --- a/source3/libsmb/clispnego.c +++ b/source3/libsmb/clispnego.c @@ -686,37 +686,39 @@ BOOL msrpc_parse(DATA_BLOB *blob,  void debug_ntlmssp_flags(uint32 neg_flags)  { +	DEBUG(3,("Got NTLMSSP neg_flags=0x%08x\n", neg_flags)); +	  	if (neg_flags & NTLMSSP_NEGOTIATE_UNICODE)  -		DEBUG(4, ("  NTLMSSP_NEGOTIATE_UNICODE\n")); +		DEBUGADD(4, ("  NTLMSSP_NEGOTIATE_UNICODE\n"));  	if (neg_flags & NTLMSSP_NEGOTIATE_OEM)  -		DEBUG(4, ("  NTLMSSP_NEGOTIATE_OEM\n")); +		DEBUGADD(4, ("  NTLMSSP_NEGOTIATE_OEM\n"));  	if (neg_flags & NTLMSSP_REQUEST_TARGET)  -		DEBUG(4, ("  NTLMSSP_REQUEST_TARGET\n")); +		DEBUGADD(4, ("  NTLMSSP_REQUEST_TARGET\n"));  	if (neg_flags & NTLMSSP_NEGOTIATE_SIGN)  -		DEBUG(4, ("  NTLMSSP_NEGOTIATE_SIGN\n")); +		DEBUGADD(4, ("  NTLMSSP_NEGOTIATE_SIGN\n"));  	if (neg_flags & NTLMSSP_NEGOTIATE_SEAL)  -		DEBUG(4, ("  NTLMSSP_NEGOTIATE_SEAL\n")); +		DEBUGADD(4, ("  NTLMSSP_NEGOTIATE_SEAL\n"));  	if (neg_flags & NTLMSSP_NEGOTIATE_LM_KEY)  -		DEBUG(4, ("  NTLMSSP_NEGOTIATE_LM_KEY\n")); +		DEBUGADD(4, ("  NTLMSSP_NEGOTIATE_LM_KEY\n"));  	if (neg_flags & NTLMSSP_NEGOTIATE_NETWARE)  -		DEBUG(4, ("  NTLMSSP_NEGOTIATE_NETWARE\n")); +		DEBUGADD(4, ("  NTLMSSP_NEGOTIATE_NETWARE\n"));  	if (neg_flags & NTLMSSP_NEGOTIATE_NTLM)  -		DEBUG(4, ("  NTLMSSP_NEGOTIATE_NTLM\n")); +		DEBUGADD(4, ("  NTLMSSP_NEGOTIATE_NTLM\n"));  	if (neg_flags & NTLMSSP_NEGOTIATE_DOMAIN_SUPPLIED)  -		DEBUG(4, ("  NTLMSSP_NEGOTIATE_DOMAIN_SUPPLIED\n")); +		DEBUGADD(4, ("  NTLMSSP_NEGOTIATE_DOMAIN_SUPPLIED\n"));  	if (neg_flags & NTLMSSP_NEGOTIATE_WORKSTATION_SUPPLIED)  -		DEBUG(4, ("  NTLMSSP_NEGOTIATE_WORKSTATION_SUPPLIED\n")); +		DEBUGADD(4, ("  NTLMSSP_NEGOTIATE_WORKSTATION_SUPPLIED\n"));  	if (neg_flags & NTLMSSP_NEGOTIATE_THIS_IS_LOCAL_CALL)  -		DEBUG(4, ("  NTLMSSP_NEGOTIATE_THIS_IS_LOCAL_CALL\n")); +		DEBUGADD(4, ("  NTLMSSP_NEGOTIATE_THIS_IS_LOCAL_CALL\n"));  	if (neg_flags & NTLMSSP_NEGOTIATE_ALWAYS_SIGN)  -		DEBUG(4, ("  NTLMSSP_NEGOTIATE_ALWAYS_SIGN\n")); +		DEBUGADD(4, ("  NTLMSSP_NEGOTIATE_ALWAYS_SIGN\n"));  	if (neg_flags & NTLMSSP_NEGOTIATE_NTLM2)  -		DEBUG(4, ("  NTLMSSP_NEGOTIATE_NTLM2\n")); +		DEBUGADD(4, ("  NTLMSSP_NEGOTIATE_NTLM2\n"));  	if (neg_flags & NTLMSSP_CHAL_TARGET_INFO)  -		DEBUG(4, ("  NTLMSSP_CHAL_TARGET_INFO\n")); +		DEBUGADD(4, ("  NTLMSSP_CHAL_TARGET_INFO\n"));  	if (neg_flags & NTLMSSP_NEGOTIATE_128)  -		DEBUG(4, ("  NTLMSSP_NEGOTIATE_128\n")); +		DEBUGADD(4, ("  NTLMSSP_NEGOTIATE_128\n"));  	if (neg_flags & NTLMSSP_NEGOTIATE_KEY_EXCH)  -		DEBUG(4, ("  NTLMSSP_NEGOTIATE_KEY_EXCH\n")); +		DEBUGADD(4, ("  NTLMSSP_NEGOTIATE_KEY_EXCH\n"));  } diff --git a/source3/smbd/sesssetup.c b/source3/smbd/sesssetup.c index a49982dcfe..c37c655fd1 100644 --- a/source3/smbd/sesssetup.c +++ b/source3/smbd/sesssetup.c @@ -294,8 +294,6 @@ static int reply_spnego_negotiate(connection_struct *conn,  		return ERROR_NT(NT_STATUS_LOGON_FAILURE);  	} -	DEBUG(3,("Got neg_flags=0x%08x\n", neg_flags)); -  	debug_ntlmssp_flags(neg_flags);  	if (ntlmssp_auth_context) {  | 
