Hi Guys!

On 01/03/2011 08:05 AM, Antonin Kral wrote:
> Hi Cyril,
>
> thank you for you for your report.
>
> * Cyril Brulebois <k...@debian.org> [2011-01-02 23:25] wrote:
>> Source: pimd
>> Version: 2.1.5-2
>> Severity: serious
>> Justification: FTBFS
>>
>> Hi,
>>
>> your package no longer builds on kfreebsd-*:
>> |   CC      kern.o
>> | cc1: warnings being treated as errors
>> | kern.c: In function 'k_del_vif':
>> | kern.c:341: error: unused parameter 'v'
>> | make[1]: *** [kern.o] Error 1
>>
>> (Yay for -Werror.)
> Is there any real reason for forcing -Werror during the package build?

It's more of a policy thing for me.  Warnings tend to hide real bugs ...
at least in my world. :)

> I don't know if you had time to check the sources. The error is caused by
> the fact, that MRT_DEL_VIF API is different in linux and in BSD (Linux
> needs pointer to struct uvif). So the implementation in pimd:
>   - always passes pointer to that structure to k_del_vif()
>   - if on Linux, it is passed to kernel
>   - if on BSD, it is not used

Yeah, this is a regression. My bad.

I've been working on fixing some bugs where mrouted and pimd share code
and I accidentally created this mess.  It was bad testing on my part, sorry!

> So I we stick with -Werror, than I see two solutions:
>   a) wrap calls to k_del_vif() with additional logic which will change
>      the prototype / will decide to or not to pass the scructure
>   b) fake use of 'v' (which is the structure) in k_del_vif()
>
> Both options seems to be a bit of 'hack'.

The real fix is here:

https://github.com/troglobit/pimd/commit/6eaff4dc495ff67933a458ca3316ad060e43a1fc

Regards
 /Joachim

<<attachment: joachim_nilsson.vcf>>

Reply via email to