Author: abartlet
Date: 2007-01-22 12:33:27 +0000 (Mon, 22 Jan 2007)
New Revision: 20949

WebSVN: 
http://websvn.samba.org/cgi-bin/viewcvs.cgi?view=rev&root=samba&rev=20949

Log:
Looking over some lcov output, try and walk some error paths.

Andrew Bartlett

Modified:
   branches/SAMBA_4_0/source/auth/ntlmssp/ntlmssp_sign.c
   branches/SAMBA_4_0/source/torture/auth/ntlmssp.c


Changeset:
Modified: branches/SAMBA_4_0/source/auth/ntlmssp/ntlmssp_sign.c
===================================================================
--- branches/SAMBA_4_0/source/auth/ntlmssp/ntlmssp_sign.c       2007-01-22 
11:57:45 UTC (rev 20948)
+++ branches/SAMBA_4_0/source/auth/ntlmssp/ntlmssp_sign.c       2007-01-22 
12:33:27 UTC (rev 20949)
@@ -168,7 +168,7 @@
        }
 
        if (sig->length < 8) {
-               DEBUG(0, ("NTLMSSP packet check failed due to short signature 
(%lu bytes)!\n", 
+               DEBUG(1, ("NTLMSSP packet check failed due to short signature 
(%lu bytes)!\n", 
                          (unsigned long)sig->length));
        }
 
@@ -192,7 +192,7 @@
                        DEBUG(5, ("BAD SIG: got signature over %llu bytes of 
input:\n", (unsigned long long)pdu_length));
                        dump_data(5, sig->data, sig->length);
                        
-                       DEBUG(0, ("NTLMSSP NTLM2 packet check failed due to 
invalid signature on %llu bytes of input!\n", (unsigned long long)pdu_length));
+                       DEBUG(1, ("NTLMSSP NTLM2 packet check failed due to 
invalid signature on %llu bytes of input!\n", (unsigned long long)pdu_length));
                        return NT_STATUS_ACCESS_DENIED;
                }
        } else {
@@ -205,7 +205,7 @@
                        DEBUG(5, ("BAD SIG: got signature of %llu bytes of 
input:\n", (unsigned long long)length));
                        dump_data(5, sig->data, sig->length);
                        
-                       DEBUG(0, ("NTLMSSP NTLM1 packet check failed due to 
invalid signature on %llu bytes of input:\n", (unsigned long long)length));
+                       DEBUG(1, ("NTLMSSP NTLM1 packet check failed due to 
invalid signature on %llu bytes of input:\n", (unsigned long long)length));
                        return NT_STATUS_ACCESS_DENIED;
                }
        }

Modified: branches/SAMBA_4_0/source/torture/auth/ntlmssp.c
===================================================================
--- branches/SAMBA_4_0/source/torture/auth/ntlmssp.c    2007-01-22 11:57:45 UTC 
(rev 20948)
+++ branches/SAMBA_4_0/source/torture/auth/ntlmssp.c    2007-01-22 12:33:27 UTC 
(rev 20949)
@@ -72,6 +72,18 @@
        torture_assert(tctx, 0 == memcmp(sig.data, expected_sig.data, 
sig.length),
                                   "data mismatch");
 
+       torture_assert_ntstatus_equal(tctx, 
+                                     
gensec_ntlmssp_check_packet(gensec_security, gensec_security,
+                                                                 data.data, 
data.length, data.data, data.length, &sig),
+                                     NT_STATUS_ACCESS_DENIED, "Check of just 
signed packet (should fail, wrong end)");
+
+       gensec_ntlmssp_state->session_key = data_blob(NULL, 0);
+
+       torture_assert_ntstatus_equal(tctx, 
+                                     
gensec_ntlmssp_check_packet(gensec_security, gensec_security,
+                                                                 data.data, 
data.length, data.data, data.length, &sig),
+                                     NT_STATUS_NO_USER_SESSION_KEY, "Check of 
just signed packet without a session key should fail");
+
        talloc_free(gensec_security);
 
        torture_assert_ntstatus_ok(tctx, 
@@ -114,6 +126,11 @@
        torture_assert(tctx,  0 == memcmp(sig.data+8, expected_sig.data+8, 
sig.length-8),
                                   "data mismatch");
 
+       torture_assert_ntstatus_equal(tctx, 
+                                     
gensec_ntlmssp_check_packet(gensec_security, gensec_security,
+                                                                 data.data, 
data.length, data.data, data.length, &sig),
+                                     NT_STATUS_ACCESS_DENIED, "Check of just 
signed packet (should fail, wrong end)");
+
        talloc_free(gensec_security);
        return true;
 }

Reply via email to