kern/51555: Kernel panic in ifconfig when setting IP address in vx0

Yeasah Pell yeasah at apocalypse.org
Sat Jun 7 11:50:15 PDT 2003


The following reply was made to PR kern/51555; it has been noted by GNATS.

From: Yeasah Pell <yeasah at apocalypse.org>
To: freebsd-gnats-submit at FreeBSD.org, le at univie.ac.at,
	des at freebsd.org
Cc:  
Subject: Re: kern/51555: Kernel panic in ifconfig when setting IP address
 in vx0
Date: Sat, 07 Jun 2003 14:42:12 -0400

 This is a cryptographically signed message in MIME format.
 
 --------------ms010605020604020201070301
 Content-Type: text/plain; charset=us-ascii; format=flowed
 Content-Transfer-Encoding: 7bit
 
 This bug was introduced in version 1.43 of /src/sys/dev/vx/if_vx.c. A 
 quick look at this change reveals an obvious error: 
 http://www.freebsd.org/cgi/cvsweb.cgi/src/sys/dev/vx/if_vx.c.diff?r1=1.42&r2=1.43&f=h 
 
 
 The problem is that the ad-hoc mbuf packet header assert code was 
 replaced with the M_ASSERTPKTHDR macro, but this particular modification 
 goes too far in replacing a check for NULL mbuf by the macro 
 functionality. They aren't the same, since the function merely returns 
 if there is no mbuf, whereas the macro causes an assert.
 
 This certainly made the update from 5.0 to 5.1 more exciting... :-)
 
 Here is a patch to restore the NULL check:
 
 ---------------------------------
 
 --- if_vx.c     Tue Apr  8 10:25:44 2003
 +++ if_vx.c.fixed       Sat Jun  7 13:57:40 2003
 @@ -400,6 +400,9 @@
   startagain:
       /* Sneak a peek at the next packet */
       m = ifp->if_snd.ifq_head;
 +    if (m == NULL) {
 +        return;
 +    }
 
       /* We need to use m->m_pkthdr.len, so require the header */
       M_ASSERTPKTHDR(m);
 
 --------------ms010605020604020201070301
 Content-Type: application/x-pkcs7-signature; name="smime.p7s"
 Content-Transfer-Encoding: base64
 Content-Disposition: attachment; filename="smime.p7s"
 Content-Description: S/MIME Cryptographic Signature
 
 MIAGCSqGSIb3DQEHAqCAMIACAQExCzAJBgUrDgMCGgUAMIAGCSqGSIb3DQEHAQAAoIIJVDCC
 AwgwggJxoAMCAQICAwnZDDANBgkqhkiG9w0BAQQFADCBkjELMAkGA1UEBhMCWkExFTATBgNV
 BAgTDFdlc3Rlcm4gQ2FwZTESMBAGA1UEBxMJQ2FwZSBUb3duMQ8wDQYDVQQKEwZUaGF3dGUx
 HTAbBgNVBAsTFENlcnRpZmljYXRlIFNlcnZpY2VzMSgwJgYDVQQDEx9QZXJzb25hbCBGcmVl
 bWFpbCBSU0EgMjAwMC44LjMwMB4XDTAzMDQzMDIxMTUxMVoXDTA0MDQyOTIxMTUxMVowRzEf
 MB0GA1UEAxMWVGhhd3RlIEZyZWVtYWlsIE1lbWJlcjEkMCIGCSqGSIb3DQEJARYVeWVhc2Fo
 QGFwb2NhbHlwc2Uub3JnMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAoCk8WLEe
 Jgpv60QHtwnXci2ZZYHg2W0zX8AjwQAHHrfD5ebnw++luEFgsXMJ8s9e+K8HSdTcwejsEAMu
 mIFtOoIcHBP8zqqismkM927kZKeee+E0V9k2H2Q0roA0z0b02raQPNAzVC7g3vTyhQGJQU3J
 Qz1pfXi0/AeAA9CkxEVpEuPAfyKV5HEiI0C1iOaO72+QezOJt/g9SSnsaRRt5xxZ4yLOGr/o
 SYp3qxxjZVHEz9kMqsk1fGsS4TPy1G7DlcTp1ES7Bymwb6TCM38Rhm8qXVv/sTT1Ak/KesKI
 4CQJx7o3CRPKvGUeZq5Liu0NwbAq7DM3qzdyRlWR3mUgCwIDAQABozIwMDAgBgNVHREEGTAX
 gRV5ZWFzYWhAYXBvY2FseXBzZS5vcmcwDAYDVR0TAQH/BAIwADANBgkqhkiG9w0BAQQFAAOB
 gQDeK4UAeY+q5cFfDpLb7ihz5BpfcTpd/R+qmRfZPDWsQObb8cp+96ipEYgKqgfKlrfOuRBt
 f8i5esr5+m8NHtzVOKAInu5d4gPm3iQnWaX0+Y8grcMND2yYPa26GZeTvOoarkCFqlB7V9vB
 ErMSD46dgesnCXnhWfOnLs+CFXm63DCCAwgwggJxoAMCAQICAwnZDDANBgkqhkiG9w0BAQQF
 ADCBkjELMAkGA1UEBhMCWkExFTATBgNVBAgTDFdlc3Rlcm4gQ2FwZTESMBAGA1UEBxMJQ2Fw
 ZSBUb3duMQ8wDQYDVQQKEwZUaGF3dGUxHTAbBgNVBAsTFENlcnRpZmljYXRlIFNlcnZpY2Vz
 MSgwJgYDVQQDEx9QZXJzb25hbCBGcmVlbWFpbCBSU0EgMjAwMC44LjMwMB4XDTAzMDQzMDIx
 MTUxMVoXDTA0MDQyOTIxMTUxMVowRzEfMB0GA1UEAxMWVGhhd3RlIEZyZWVtYWlsIE1lbWJl
 cjEkMCIGCSqGSIb3DQEJARYVeWVhc2FoQGFwb2NhbHlwc2Uub3JnMIIBIjANBgkqhkiG9w0B
 AQEFAAOCAQ8AMIIBCgKCAQEAoCk8WLEeJgpv60QHtwnXci2ZZYHg2W0zX8AjwQAHHrfD5ebn
 w++luEFgsXMJ8s9e+K8HSdTcwejsEAMumIFtOoIcHBP8zqqismkM927kZKeee+E0V9k2H2Q0
 roA0z0b02raQPNAzVC7g3vTyhQGJQU3JQz1pfXi0/AeAA9CkxEVpEuPAfyKV5HEiI0C1iOaO
 72+QezOJt/g9SSnsaRRt5xxZ4yLOGr/oSYp3qxxjZVHEz9kMqsk1fGsS4TPy1G7DlcTp1ES7
 Bymwb6TCM38Rhm8qXVv/sTT1Ak/KesKI4CQJx7o3CRPKvGUeZq5Liu0NwbAq7DM3qzdyRlWR
 3mUgCwIDAQABozIwMDAgBgNVHREEGTAXgRV5ZWFzYWhAYXBvY2FseXBzZS5vcmcwDAYDVR0T
 AQH/BAIwADANBgkqhkiG9w0BAQQFAAOBgQDeK4UAeY+q5cFfDpLb7ihz5BpfcTpd/R+qmRfZ
 PDWsQObb8cp+96ipEYgKqgfKlrfOuRBtf8i5esr5+m8NHtzVOKAInu5d4gPm3iQnWaX0+Y8g
 rcMND2yYPa26GZeTvOoarkCFqlB7V9vBErMSD46dgesnCXnhWfOnLs+CFXm63DCCAzgwggKh
 oAMCAQICEGZFcrfMdPXPY3ZFhNAukQEwDQYJKoZIhvcNAQEEBQAwgdExCzAJBgNVBAYTAlpB
 MRUwEwYDVQQIEwxXZXN0ZXJuIENhcGUxEjAQBgNVBAcTCUNhcGUgVG93bjEaMBgGA1UEChMR
 VGhhd3RlIENvbnN1bHRpbmcxKDAmBgNVBAsTH0NlcnRpZmljYXRpb24gU2VydmljZXMgRGl2
 aXNpb24xJDAiBgNVBAMTG1RoYXd0ZSBQZXJzb25hbCBGcmVlbWFpbCBDQTErMCkGCSqGSIb3
 DQEJARYccGVyc29uYWwtZnJlZW1haWxAdGhhd3RlLmNvbTAeFw0wMDA4MzAwMDAwMDBaFw0w
 NDA4MjcyMzU5NTlaMIGSMQswCQYDVQQGEwJaQTEVMBMGA1UECBMMV2VzdGVybiBDYXBlMRIw
 EAYDVQQHEwlDYXBlIFRvd24xDzANBgNVBAoTBlRoYXd0ZTEdMBsGA1UECxMUQ2VydGlmaWNh
 dGUgU2VydmljZXMxKDAmBgNVBAMTH1BlcnNvbmFsIEZyZWVtYWlsIFJTQSAyMDAwLjguMzAw
 gZ8wDQYJKoZIhvcNAQEBBQADgY0AMIGJAoGBAN4zMqZjxwklRT7SbngnZ4HF2ogZgpcO40Qp
 imM1Km1wPPrcrvfudG8wvDOQf/k0caCjbZjxw0+iZdsN+kvx1t1hpfmFzVWaNRqdknWoJ67Y
 cvm6AvbXsJHeHOmr4BgDqHxDQlBRh4M88Dm0m1SKE4f/s5udSWYALQmJ7JRr6aFpAgMBAAGj
 TjBMMCkGA1UdEQQiMCCkHjAcMRowGAYDVQQDExFQcml2YXRlTGFiZWwxLTI5NzASBgNVHRMB
 Af8ECDAGAQH/AgEAMAsGA1UdDwQEAwIBBjANBgkqhkiG9w0BAQQFAAOBgQAxsUtHXfkBceX1
 U2xdedY9mMAmE2KBIqcS+CKV6BtJtyd7BDm6/ObyJOuR+r3sDSo491BVqGz3Da1MG7wD9LXr
 okefbKIMWI0xQgkRbLAaadErErJAXWr5edDqLiXdiuT82w0fnQLzWtvKPPZE6iZph39Ins6l
 n+eE2MliYq0FxjGCA9UwggPRAgEBMIGaMIGSMQswCQYDVQQGEwJaQTEVMBMGA1UECBMMV2Vz
 dGVybiBDYXBlMRIwEAYDVQQHEwlDYXBlIFRvd24xDzANBgNVBAoTBlRoYXd0ZTEdMBsGA1UE
 CxMUQ2VydGlmaWNhdGUgU2VydmljZXMxKDAmBgNVBAMTH1BlcnNvbmFsIEZyZWVtYWlsIFJT
 QSAyMDAwLjguMzACAwnZDDAJBgUrDgMCGgUAoIICDzAYBgkqhkiG9w0BCQMxCwYJKoZIhvcN
 AQcBMBwGCSqGSIb3DQEJBTEPFw0wMzA2MDcxODQyMTJaMCMGCSqGSIb3DQEJBDEWBBSGfZkH
 zs5hiuo1V+9zqK77v5eqBTBSBgkqhkiG9w0BCQ8xRTBDMAoGCCqGSIb3DQMHMA4GCCqGSIb3
 DQMCAgIAgDANBggqhkiG9w0DAgIBQDAHBgUrDgMCBzANBggqhkiG9w0DAgIBKDCBqwYJKwYB
 BAGCNxAEMYGdMIGaMIGSMQswCQYDVQQGEwJaQTEVMBMGA1UECBMMV2VzdGVybiBDYXBlMRIw
 EAYDVQQHEwlDYXBlIFRvd24xDzANBgNVBAoTBlRoYXd0ZTEdMBsGA1UECxMUQ2VydGlmaWNh
 dGUgU2VydmljZXMxKDAmBgNVBAMTH1BlcnNvbmFsIEZyZWVtYWlsIFJTQSAyMDAwLjguMzAC
 AwnZDDCBrQYLKoZIhvcNAQkQAgsxgZ2ggZowgZIxCzAJBgNVBAYTAlpBMRUwEwYDVQQIEwxX
 ZXN0ZXJuIENhcGUxEjAQBgNVBAcTCUNhcGUgVG93bjEPMA0GA1UEChMGVGhhd3RlMR0wGwYD
 VQQLExRDZXJ0aWZpY2F0ZSBTZXJ2aWNlczEoMCYGA1UEAxMfUGVyc29uYWwgRnJlZW1haWwg
 UlNBIDIwMDAuOC4zMAIDCdkMMA0GCSqGSIb3DQEBAQUABIIBACLXvJcWOabke63+ptJfOjvq
 OMkIqXpRgFuQ8jBXnOc3uT0hu59AwlF9C2H2fC+fQCH9NQeT7i8jtGpkEcmzW/kJZgAwq4CL
 3JMp4nybKKNAjWoIHmhowjUqzNfLIXI92IjGBzHHIrF+t+HhAjFUMUXNT//MLChlnMQXGzXE
 u8SegY5A7U5ohSNNvtdn5dcx1mmvBPuCQyC0/EikkOL/zMu9GVhAkqDgGjfL4en27wPckrCo
 BqZgJ3gV8z5d3nGfcG7eK+FRUTlVHLy7tL7cHolAPVj109ebZ8smyfXZKekaGEreioMu4SSx
 JZZbsrzQwQ0z5MYfKWFZR2VaPpD9+3kAAAAAAAA=
 --------------ms010605020604020201070301--
 
 


More information about the freebsd-bugs mailing list