Spender said he just fixed that VERY recently. On Thu, Jan 13, 2011 at 15:10, Matthew Thode wrote: > I had this issue with vanilla 2.6.32.27 patched with the 2.6.32.27 grsec > patch (2-3 days ago). > > > On Thu, Jan 13, 2011 at 14:38, "Tóth Attila" wrote: > >> Compiling the recent hardened-sources results in the following error >> message, when irda is enabled: >> >> CC net/irda/af_irda.o >> net/irda/af_irda.c: In function ‘__irda_getsockopt’: >> net/irda/af_irda.c:2289:4: error: label ‘out’ used but not defined >> >> The changes causing it introduced recently. >> >> --- linux-2.6.36-hardened-r7/net/irda/af_irda.c 2010-10-20 >> 22:30:22.000000000 +0200 >> +++ linux-2.6.36-hardened-r8/net/irda/af_irda.c 2011-01-13 >> 13:08:57.000000000 +0100 >> @@ -2278,6 +2278,17 @@ >> >> switch (optname) { >> case IRLMP_ENUMDEVICES: >> + >> + >> + /* Offset to first device entry */ >> + offset = sizeof(struct irda_device_list) - >> + sizeof(struct irda_device_info); >> + >> + if (len < offset) { >> + err = -EINVAL; >> + goto out; >> + } >> + >> /* Ask lmp for the current discovery log */ >> discoveries = irlmp_get_discoveries(&list.len, >> self->mask.word, >> self->nslots); >> @@ -2287,15 +2298,9 @@ >> err = 0; >> >> /* Write total list length back to client */ >> - if (copy_to_user(optval, &list, >> - sizeof(struct irda_device_list) - >> - sizeof(struct irda_device_info))) >> + if (copy_to_user(optval, &list, offset)) >> err = -EFAULT; >> >> - /* Offset to first device entry */ >> - offset = sizeof(struct irda_device_list) - >> - sizeof(struct irda_device_info); >> - >> /* Copy the list itself - watch for overflow */ >> if(list.len > 2048) >> { >> >> What are your suggestions? >> >> Thx: >> Dw. >> -- >> dr Tóth Attila, Radiológus, 06-20-825-8057 >> Attila Toth MD, Radiologist, +36-20-825-8057 >> >> >> >