From mboxrd@z Thu Jan 1 00:00:00 1970 From: Rocco Stanzione Date: Sun, 10 Sep 2006 20:48:40 +0000 Subject: Parsing comments Message-Id: <200609101548.40851.grasshopper@linuxkungfu.org> MIME-Version: 1 Content-Type: multipart/mixed; boundary="Boundary-00=_ooHBFJKTQFbzjwI" List-Id: To: linux-hotplug@vger.kernel.org --Boundary-00=_ooHBFJKTQFbzjwI Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Content-Disposition: inline I made this patch in reponse to a bug report on ubuntu, where a very long comment in a rules file produced an error message about a too-long rule. They broke the rule into multiple lines to avoid it, and I made a patch to check for comments before (rather than after) complaining about long lines, which ubuntu was hesitant to apply so late in the release process. I thought I'd submit it upstream and let it come back down on its own time, if you think it's a good patch. ubuntu bug report: https://launchpad.net/distros/ubuntu/+source/sane-backends/+bug/56317 Thanks, Rocco Stanzione --Boundary-00=_ooHBFJKTQFbzjwI Content-Type: text/x-diff; charset="us-ascii"; name="udev_long_comments.diff" Content-Transfer-Encoding: 7bit Content-Disposition: attachment; filename="udev_long_comments.diff" diff -u udev-093/debian/changelog udev-093/debian/changelog --- udev-093/debian/changelog +++ udev-093/debian/changelog @@ -1,3 +1,9 @@ +udev (093-0ubuntu15) edgy; urgency=low + + * Check for comments before parsing rules. Closes lp #56317 + + -- Rocco Stanzione Sun, 10 Sep 2006 15:22:00 -0500 + udev (093-0ubuntu14) edgy; urgency=low * Be gone foul devfs-emulation fiends from hell! only in patch2: unchanged: --- udev-093.orig/udev_rules.c +++ udev-093/udev_rules.c @@ -164,6 +164,10 @@ cur += count+1; lineno++; + /* see if this is a comment */ + if (bufline[0] == COMMENT_CHARACTER) + continue; + if (count >= sizeof(line)) { err("line too long, conf line skipped %s, line %d", udev_config_filename, lineno); continue; @@ -177,10 +181,6 @@ if (count == 0) continue; - /* see if this is a comment */ - if (bufline[0] == COMMENT_CHARACTER) - continue; - memcpy(line, bufline, count); line[count] = '\0'; only in patch2: unchanged: --- udev-093.orig/udev_rules_parse.c +++ udev-093/udev_rules_parse.c @@ -609,6 +609,10 @@ cur += count+1; lineno++; + /* see if this is a comment */ + if (bufline[0] == COMMENT_CHARACTER) + continue; + if (count >= sizeof(line)) { err("line too long, rule skipped '%s:%u'", filename, lineno); continue; @@ -622,10 +626,6 @@ if (count == 0) continue; - /* see if this is a comment */ - if (bufline[0] == COMMENT_CHARACTER) - continue; - /* skip backslash and newline from multi line rules */ for (i = j = 0; i < count; i++) { if (bufline[i] == '\\' && bufline[i+1] == '\n') --Boundary-00=_ooHBFJKTQFbzjwI Content-Type: text/plain; charset="us-ascii" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Disposition: inline ------------------------------------------------------------------------- Using Tomcat but need to do more? Need to support web services, security? Get stuff done quickly with pre-integrated technology to make your job easier Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642 --Boundary-00=_ooHBFJKTQFbzjwI Content-Type: text/plain; charset="us-ascii" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Disposition: inline _______________________________________________ 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 --Boundary-00=_ooHBFJKTQFbzjwI--