IP-Adresse für POP3 über xinetd
-
Hallo.
Ich bin nicht sehr versiert in c++ benötige aber unbedingt eine Änderung in
einer Anwendung.
Ich nutze Linux Redhat 8 und habe ein POP3 den ich modifiziert habe.
Der POP3 Dienst wird über den xinetd gestartet.
Dort soll nun bei erfolgreichem login der Username und die IP Adresse in das Logfile geschrieben werden.
Soweit funktioniert alles ganz gut. Jedoch erhalte ich keine IP Adresse.
Ich befürchte das die IP über den xinetd kommt und ich daher diese nicht
einfach über die lib abfragen kann ?!----snip-----
#include <syslog.h>
#include <sys/socket.h>
#include <netinet/in.h>
#include <netdb.h>char *inbuf;
{
len = sizeof(cs);
if (getpeername(sp,(struct sockaddr *)&cs,&len) < 0) {
peername = "unresolved";
}
else {
ch = gethostbyaddr((char&cs.sin_addr, sizeof(cs.sin_addr),
AF_INET);
if(ch == NULL) {
peername = (char *)inet_ntoa(cs.sin_addr);
}
else {
/*peername = ch->h_name;*/
peername = "name";
}
if (peername == NULL) {
peername = "unresolved";
}
}
/* name of the user, and the calling client name logged. */
syslog( LOG_AUTHPRIV | LOG_INFO, "%s: client %s", cli_user,
peername);.....
----snap-----
weiss jemand weiter oder kann mir jemand ein codesample geben ?!
besten dank im voraus.
Mangar
-
Dieser Thread wurde von Moderator/in evilissimo aus dem Forum C++ in das Forum Rund um die Programmierung verschoben.
Im Zweifelsfall bitte auch folgende Hinweise beachten:
C/C++ Forum :: FAQ - Sonstiges :: Wohin mit meiner Frage?Dieses Posting wurde automatisch erzeugt.
-
...TCP/IP-Netzwerkadministration (Unix/Linux)