Giriş
Socketin kullandığı yerel ip adresini döner. Şöyle yaparız.
Socketin kullandığı yerel ip adresini döner. Şöyle yaparız.
struct sockaddr_in addr;
socklen_t addrLen = sizeof(addr);
if(getsockname(fd, (struct sockaddr*) &addr, &addrLen) == -1)
{
string errStr = strerror(errno);
return RETURN_FAILURE;
}
Bu noktadan sonra addr yapısında elimizdeki socketin ipv4 adresi bulunur. Bu yapıyı inet_ntop() çağrısına verip string'e çevirebiliriz. Şöyle yaparız.char bufferIp[INET_ADDRSTRLEN];
if(inet_ntop(AF_INET, &addr.sin_addr, bufferIp, INET_ADDRSTRLEN) == NULL)
{
string errStr = strerror(errno);
return RETURN_FAILURE;
}
string ip (bufferIp);
Hiç yorum yok:
Yorum Gönder