innd -N not working from inn.conf

Julien ÉLIE julien at
Sun May 13 20:51:13 UTC 2012

Hi John,

>>>> If I use innflags -C -N (with a space) I get a lot of failures when I
>>>> run "inncheck -v" (I didn't try "ctlinnd xexec innd" because of these
>>>> failures).
>> Do you use quotes in inn.conf?
>> innflags: "-C -N"
>> I do not see any problem with this (expected) syntax.
> No, I didn't use quotes for testing. Would that have worked?

Yes, it would have worked!

According to the inn.conf documentation:

         If the value contains embedded whitespace or any
         of the characters []<"\:>, it must be enclosed
         in double quotes ("").

> I also didn't use in my tests, just the ctlinnd xexec innd.
> I remembered reading that "ctlinnd reload what reason" would not reload
> inn.conf and that the server needed to be restarted. I have always used
> the xexec for other changes in inn.conf and my changes worked (such as
> temporarily changing the artcutoff, maxartsize, etc.).

I would be interested in knowing where you read that.  It would be a bug 
in our documentation.

According to the ctlinnd documentation:

       reload what reason

           There is no way to reload inn.conf, storage.conf, or other
           configuration files for the storage or overview backends.
           To pick up changes to those files, use "ctlinnd xexec innd"
           to restart innd.

> However, I did discover that rebooting Debian after a recent kernel
> upgrade did the trick. The server came back online with "Perl filtering
> disabled" when checked with ctlinnd mode.

OK, that's great to hear.  I am glad your issue is now solved.
(Anyway, thanks for your report -- the documentation for the innflags 
parameter has been improved.)

> INN.CONF(5):
> This file is intended to be fairly static. Any changes made to it will
> generally not affect any running programs until they restart. Unlike
> nearly every other configuration file, inn.conf cannot be reloaded
> dynamically using ctlinnd(8); innd(8) must be stopped and restarted for
> relevant changes to inn.conf to take effect (ctlinnd xexec innd is the
> fastest way to do this.)

It properly mentions "ctlinnd xexec innd".

> I also see says that throttling should be performed first. If
> throttling is necessary before, then throttling should be
> done by at the beginning of Perhaps it was changed in
> more recent versions of INN?

I see that " stop" calls a "ctlinnd shutdown".
This command calls JustCleanup(), which amongst other things calls 
ICDclose() and InndHisClose().  These are the functions called by a 
"ctlinnd throttle".
I therefore do not think it is still necessary to mention in our 
documentation that throttling innd is recommended before using " 
I will fix the documentation.  Thanks, John!

Julien ÉLIE

« Mieux vaut allumer une bougie que maudire les ténèbres. »
   (Lao Zi)

More information about the inn-workers mailing list