[PATCH 2/2] when we start up fcoe on an interface, check that

Ronnie Sahlberg ronniesahlberg
Tue Jun 24 05:35:05 CEST 2008


we actually have an
 interface name passed to us and print an error and return -ENODEV
 othervise.

Othervise we will SEGV trying to memcpy() from a null pointer 1 line
further down.

When we initialize fcoe from the fcoe module, return proper success/failure
back to tgtd so that it can abort/fail if the low level driver failed
to initialize.

Signed-off-by: Ronnie Sahlberg <ronniesahlberg at gmail.com>
Signed-off-by: root <root at ubuntu-server-1.sahlberg.net>
---
 usr/fcoe/fcoe_if.c |    9 ++++++---
 1 files changed, 6 insertions(+), 3 deletions(-)

diff --git a/usr/fcoe/fcoe_if.c b/usr/fcoe/fcoe_if.c
index 906c30b..cc61408 100644
--- a/usr/fcoe/fcoe_if.c
+++ b/usr/fcoe/fcoe_if.c
@@ -164,6 +164,11 @@ int fcoe_create_interface(char *ifname)
 	/* todo */
 	fdev->fd_link_status = TRANS_LINK_UP;

+	if (!ifname) {
+		eprintf("no interface specified.\n");
+		return -ENODEV;
+	}
+
 	memcpy(fdev->ifname, ifname, IFNAMSIZ);

 	ret = fcoe_sock_open(fdev);
@@ -204,9 +209,7 @@ int fcoe_create_interface(char *ifname)
 static int fcoe_init(int index, char *args)
 {
 	eprintf("%s\n", args);
-	fcoe_create_interface(args);
-
-	return 0;
+	return fcoe_create_interface(args);
 }

 static struct tgt_driver fcoe = {
-- 
1.5.4.3

------=_Part_14803_1832293.1214781974773
Content-Type: application/x-gzip;
 name=0002-when-we-start-up-fcoe-on-an-interface-check-that-we.patch.gz
Content-Transfer-Encoding: base64
X-Attachment-Id: f_fi29n8uh0
Content-Disposition: attachment;
 filename=0002-when-we-start-up-fcoe-on-an-interface-check-that-we.patch.gz

RnJvbSBiNjlkOTdhOTg4OGZlMzZjM2E1NTJmZjY0YWZlMjQyMjRiZGI4ZjI3IE1vbiBTZXAgMTcg
MDA6MDA6MDAgMjAwMQpGcm9tOiBSb25uaWUgU2FobGJlcmcgPHJvbm5pZXNhaGxiZXJnQGdtYWls
LmNvbT4KRGF0ZTogVHVlLCAyNCBKdW4gMjAwOCAxMzozNTowNSArMTAwMApTdWJqZWN0OiBbUEFU
Q0ggMi8yXSB3aGVuIHdlIHN0YXJ0IHVwIGZjb2Ugb24gYW4gaW50ZXJmYWNlLCBjaGVjayB0aGF0
IHdlIGFjdHVhbGx5IGhhdmUgYW4KIGludGVyZmFjZSBuYW1lIHBhc3NlZCB0byB1cyBhbmQgcHJp
bnQgYW4gZXJyb3IgYW5kIHJldHVybiAtRU5PREVWCiBvdGhlcnZpc2UuCgpPdGhlcnZpc2Ugd2Ug
d2lsbCBTRUdWIHRyeWluZyB0byBtZW1jcHkoKSBmcm9tIGEgbnVsbCBwb2ludGVyIDEgbGluZSBm
dXJ0aGVyIGRvd24uCgpXaGVuIHdlIGluaXRpYWxpemUgZmNvZSBmcm9tIHRoZSBmY29lIG1vZHVs
ZSwgcmV0dXJuIHByb3BlciBzdWNjZXNzL2ZhaWx1cmUKYmFjayB0byB0Z3RkIHNvIHRoYXQgaXQg
Y2FuIGFib3J0L2ZhaWwgaWYgdGhlIGxvdyBsZXZlbCBkcml2ZXIgZmFpbGVkIHRvIGluaXRpYWxp
emUuCgpTaWduZWQtb2ZmLWJ5OiBSb25uaWUgU2FobGJlcmcgPHJvbm5pZXNhaGxiZXJnQGdtYWls
LmNvbT4KU2lnbmVkLW9mZi1ieTogcm9vdCA8cm9vdEB1YnVudHUtc2VydmVyLTEuc2FobGJlcmcu
bmV0PgotLS0KIHVzci9mY29lL2Zjb2VfaWYuYyB8ICAgIDkgKysrKysrLS0tCiAxIGZpbGVzIGNo
YW5nZWQsIDYgaW5zZXJ0aW9ucygrKSwgMyBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS91c3Iv
ZmNvZS9mY29lX2lmLmMgYi91c3IvZmNvZS9mY29lX2lmLmMKaW5kZXggOTA2YzMwYi4uY2M2MTQw
OCAxMDA2NDQKLS0tIGEvdXNyL2Zjb2UvZmNvZV9pZi5jCisrKyBiL3Vzci9mY29lL2Zjb2VfaWYu
YwpAQCAtMTY0LDYgKzE2NCwxMSBAQCBpbnQgZmNvZV9jcmVhdGVfaW50ZXJmYWNlKGNoYXIgKmlm
bmFtZSkKIAkvKiB0b2RvICovCiAJZmRldi0+ZmRfbGlua19zdGF0dXMgPSBUUkFOU19MSU5LX1VQ
OwogCisJaWYgKCFpZm5hbWUpIHsKKwkJZXByaW50Zigibm8gaW50ZXJmYWNlIHNwZWNpZmllZC5c
biIpOworCQlyZXR1cm4gLUVOT0RFVjsKKwl9CisKIAltZW1jcHkoZmRldi0+aWZuYW1lLCBpZm5h
bWUsIElGTkFNU0laKTsKIAogCXJldCA9IGZjb2Vfc29ja19vcGVuKGZkZXYpOwpAQCAtMjA0LDkg
KzIwOSw3IEBAIGludCBmY29lX2NyZWF0ZV9pbnRlcmZhY2UoY2hhciAqaWZuYW1lKQogc3RhdGlj
IGludCBmY29lX2luaXQoaW50IGluZGV4LCBjaGFyICphcmdzKQogewogCWVwcmludGYoIiVzXG4i
LCBhcmdzKTsKLQlmY29lX2NyZWF0ZV9pbnRlcmZhY2UoYXJncyk7Ci0KLQlyZXR1cm4gMDsKKwly
ZXR1cm4gZmNvZV9jcmVhdGVfaW50ZXJmYWNlKGFyZ3MpOwogfQogCiBzdGF0aWMgc3RydWN0IHRn
dF9kcml2ZXIgZmNvZSA9IHsKLS0gCjEuNS40LjMKCg==
------=_Part_14803_1832293.1214781974773--



More information about the stgt mailing list