On Fri, Feb 01, 2008 at 05:23:46PM -0700, Neil Mayhew wrote: > Package: dhcp3-client > Version: 3.1.0-2 > Followup-For: Bug #461079 > > > I don't get a segfault, but I do get errors when the client is trying to > process the domain-search option. I've looked at the wire data with > wireshark, and the data looks OK: > > 0000 02 01 06 00 1f 84 9b 55 00 00 00 00 00 00 00 00 .......U........ > 0010 ac 10 01 fc 00 00 00 00 00 00 00 00 00 11 11 0d ................ > 0020 de bb 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ > 0030 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ > 0040 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ > 0050 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ > 0060 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ > 0070 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ > 0080 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ > 0090 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ > 00a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ > 00b0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ > 00c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ > 00d0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ > 00e0 00 00 00 00 00 00 00 00 00 00 00 00 63 82 53 63 ............c.Sc > 00f0 35 01 05 36 04 ac 10 01 07 33 04 00 03 f4 80 01 5..6.....3...... > 0100 04 ff ff ff 00 1c 04 ac 10 01 ff 03 04 ac 10 01 ................ > 0110 01 0f 14 64 68 63 70 2e 63 61 6c 2e 77 79 63 6c ...dhcp.cal.wycl > 0120 69 66 66 65 2e 63 61 06 08 ac 10 00 0f ac 10 01 iffe.ca......... > 0130 07 77 30 77 79 63 6c 69 66 66 65 2e 63 61 20 63 .w0wycliffe.ca c > 0140 61 6c 2e 77 79 63 6c 69 66 66 65 2e 63 61 20 64 al.wycliffe.ca d > 0150 68 63 70 2e 63 61 6c 2e 77 79 63 6c 69 66 66 65 hcp.cal.wycliffe > 0160 2e 63 61 2c 04 ac 10 01 08 ff .ca,...... > > (According to wireshark, the domain-search hunk starts at offset 0131 > and ends before 0163.) > > Maybe the reason I don't get a segfault is that the domain-search isn't > the last hunk in the packet? > > The errors I see in syslog (and on the terminal if I use ifup) are: > > DHCPACK from 172.16.1.7 > Invalid domain list. > Invalid domain list. > > I searched for "Invalid domain" in the source, and found it at > options.c:1494. This calls MRns_name_unpack, and then I saw the > following at ns_name.c:320: > > case 0: > /* Limit checks. */ > if (dstp + n + 1 >= dstlim || srcp + n >= eom) { > errno = EMSGSIZE; > return (-1); > } > > Shouldn't that be > eom rather than >= eom? It's the only way I can see > that an error would be returned. > > Regardless, the client doesn't seem to like what wireshark thinks is > perfectly good data. > > Hope this helps, >
Could you enable the /etc/dhcp3/dhclient-enter-hooks.d/debug hook (by editing it and changing RUN to "yes") and checking out the /tmp/dhclient-script.debug file and telling me what new_domain_search is set to? regards Andrew
signature.asc
Description: Digital signature