oath-toolkit-help
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [OATH-Toolkit-help] OATH_PRINTF_ERROR with more than one user in use


From: Simon Josefsson
Subject: Re: [OATH-Toolkit-help] OATH_PRINTF_ERROR with more than one user in users.oath
Date: Wed, 04 Apr 2012 10:27:30 +0200
User-agent: Gnus/5.130004 (Ma Gnus v0.4) Emacs/24.0.94 (gnu/linux)

Fredrik Lindgren <address@hidden> writes:

> 2012-04-04 10:03 skrev Simon Josefsson:
>> Fredrik Lindgren <address@hidden> writes:
>>
>>> [pam_oath.c:pam_sm_authenticate(301)] authenticate rc 4711 (UNKNOWN:
>>> Liboath unknown error) last otp Mon Apr  2 10:23:06 2012
>>
>> Thank you.  So the culprit is this code:
>>
>>        r = fputs (origline, outfh);
>>        if (r <= 0)
>>          return OATH_PRINTF_ERROR;
>>
>> The POSIX standard says fputs should return a "non-negative number",
>> or
>> EOF.  Admittedly, 0 can be considered a non-negative number, and if
>> it
>> returns 0 on success the code above would fail with OATH_PRINTF_ERROR
>> anyway.  So the code may be buggy.  Can you make the code look like
>> this:
>>
>>        r = fputs (origline, outfh);
>>           printf ("fputs rc %d\n", r);
>>        if (r <= 0)
>>          return OATH_PRINTF_ERROR;
>>
>> and try again and show me what it prints?
>
> Looks like you're on the right track:
>
> fputs rc 0

Great.  Please try to revert all your changes and try with a fresh
1.12.1 and change this line:

          r = fputs (origline, outfh);

into

          r = fprintf (outfh, "%s\n", origline);

Does it then pass self-checks, and more importantly, does it work for
you?  If so I'll have a new release out ASAP.

/Simon



reply via email to

[Prev in Thread] Current Thread [Next in Thread]