|
|
ru.linux- RU.LINUX --------------------------------------------------------------------- From : Andrey Khavryuchenko 2:5020/400 24 Feb 2002 17:22:27 To : Eugene B. Berdnikov Subject : Re: непонятки с getpeername в ipop3d --------------------------------------------------------------------------------
Eugene,
"EBB" == Eugene B Berdnikov wrote:
EBB> Andrey Khavryuchenko <akhavr@kds.com.ua> wrote:
AK> char *client =
AK> getpeername (0,(struct sockaddr *) &sin,(void *) &i) ? "UNKNOWN" :
AK> ((sin.sin_family == AF_INET) ? inet_ntoa (sin.sin_addr) : "NON-IPv4");
AK> /* set server name in syslog */
AK> openlog (server,LOG_PID,LOG_MAIL);
AK> fclose (stderr); /* possibly save a process ID */
AK> dorc (NIL,NIL); /* do systemwide configuration */
EBB> ^^^^^^^^^^^^^^
EBB> Есть подозрение, что в этом модуле inet_ntoa() вызывается еще раз,
EBB> и его внутренний буфер затирается, после чего client показывает на
EBB> строку, содержимое которой уже изменилось.
Хм. Таки да. Сделал strncpy после вызова -- всё поправилось. Сейчас патч
уедет маинтейнерам.
Если кому интересно -- imap-2001a-6.i386.rpm из RawHide. Версия самого
imap, соответственно imap-2001a.tar.bz2
--
Andrey V Khavryuchenko http://www.kds.com.ua/
Offshore Software Development
--- ifmail v.2.15dev5
* Origin: KDS Software Group (2:5020/400)
Вернуться к списку тем, сортированных по: возрастание даты уменьшение даты тема автор
Архивное /ru.linux/1802697b07b64.html, оценка из 5, голосов 10
|