From mboxrd@z Thu Jan 1 00:00:00 1970 From: Kay Sievers Date: Fri, 02 Apr 2004 18:29:24 +0000 Subject: [PATCH] handle netdev in udevruler Message-Id: <20040402182924.GA17496@vrfy.org> MIME-Version: 1 Content-Type: multipart/mixed; boundary="EVF5PPMfhYS0aIcm" List-Id: To: linux-hotplug@vger.kernel.org --EVF5PPMfhYS0aIcm Content-Type: text/plain; charset=us-ascii Content-Disposition: inline Here we get the netdev handling for udevruler, after all information is available now in the udev database. It also fixes the way libsysfs is used. thanks, Kay --EVF5PPMfhYS0aIcm Content-Type: text/plain; charset=us-ascii Content-Disposition: inline; filename="01-udevruler-netdev.patch" ===== udevruler.c 1.3 vs edited ===== --- 1.3/udevruler.c Sun Mar 28 18:33:33 2004 +++ edited/udevruler.c Fri Apr 2 20:26:23 2004 @@ -222,6 +222,7 @@ } } + sysfs_close_directory(sysfs_dir); return 0; } @@ -229,7 +230,6 @@ { struct sysfs_class_device *class_dev; struct sysfs_class_device *class_dev_parent; - struct sysfs_attribute *attr; struct sysfs_device *sysfs_dev; struct sysfs_device *sysfs_dev_parent; char key[NAME_SIZE]; @@ -246,16 +246,6 @@ return -1; } - /* read the 'dev' file for major/minor*/ - attr = sysfs_get_classdev_attr(class_dev, "dev"); - if (attr == NULL) { - dbg("couldn't get the \"dev\" file"); - retval = -1; - goto exit; - } - - sysfs_close_attribute(attr); - /* open sysfs class device directory and get all attributes */ if (add_all_attributes(class_dev->path, level) != 0) { dbg("couldn't open class device directory"); @@ -266,11 +256,10 @@ /* get the device link (if parent exists look here) */ class_dev_parent = sysfs_get_classdev_parent(class_dev); - if (class_dev_parent != NULL) { - //sysfs_close_class_device(class_dev); - class_dev = class_dev_parent; - } - sysfs_dev = sysfs_get_classdev_device(class_dev); + if (class_dev_parent != NULL) + sysfs_dev = sysfs_get_classdev_device(class_dev_parent); + else + sysfs_dev = sysfs_get_classdev_device(class_dev); /* look the device chain upwards */ while (sysfs_dev != NULL) { @@ -290,13 +279,11 @@ if (sysfs_dev_parent == NULL) break; - //sysfs_close_device(sysfs_dev); sysfs_dev = sysfs_dev_parent; } - sysfs_close_device(sysfs_dev); exit: - //sysfs_close_class_device(class_dev); + sysfs_close_class_device(class_dev); return retval; } @@ -403,7 +390,7 @@ int i; int numitems; struct attribute **selattr; - char text_rule[80]; + char text_rule[255]; answer = newtRunForm(form); if (answer == quit) --EVF5PPMfhYS0aIcm-- ------------------------------------------------------- This SF.Net email is sponsored by: IBM Linux Tutorials Free Linux tutorial presented by Daniel Robbins, President and CEO of GenToo technologies. Learn everything from fundamentals to system administration.http://ads.osdn.com/?ad_id=1470&alloc_id=3638&op=click _______________________________________________ Linux-hotplug-devel mailing list http://linux-hotplug.sourceforge.net Linux-hotplug-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/linux-hotplug-devel