The parsing code made some strange assumptions about what is a printer
name, and what is a comment.
Autobuild-User: Jeremy Allison <jra@samba.org>
Autobuild-Date: Fri May 20 22:52:23 CEST 2011 on sn-devel-104
has_punctuation = (strchr_m(p, ' ') ||
strchr_m(p, '\t') ||
+ strchr_m(p, '"') ||
+ strchr_m(p, '\'') ||
+ strchr_m(p, ';') ||
+ strchr_m(p, ',') ||
strchr_m(p, '(') ||
strchr_m(p, ')'));
continue;
}
- if (strlen(p) <= MAXPRINTERLEN &&
- strlen(p) > strlen(name) && !has_punctuation) {
- if (!*comment) {
- strlcpy(comment, name, sizeof(comment));
- }
+ if (strlen(p) <= MAXPRINTERLEN && *name == '\0' && !has_punctuation) {
strlcpy(name, p, sizeof(name));
continue;
}
}
}
- comment[60] = 0;
- name[MAXPRINTERLEN] = 0;
-
if (*name && !pcap_cache_add(name, comment, NULL)) {
x_fclose(pcap_file);
return false;