mirror of
https://github.com/cuberite/libevent.git
synced 2025-09-12 13:58:58 -04:00
Expose a function to getsockname() on a listener's fd.
This commit is contained in:
parent
7ea8e89d5c
commit
fab50488fc
@ -112,6 +112,11 @@ struct event_base *evconnlistener_get_base(struct evconnlistener *lev);
|
||||
/** Return the socket that an evconnlistner is listening on. */
|
||||
evutil_socket_t evconnlistener_get_fd(struct evconnlistener *lev);
|
||||
|
||||
/** Set ss to the address that an evconnlistner is listening on; returns 0
|
||||
* on success, -1 on failure. */
|
||||
int evconnlistener_get_address(struct evconnlistener *lev,
|
||||
struct sockaddr *sa, ev_socklen_t *socklen);
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
#endif
|
||||
|
10
listener.c
10
listener.c
@ -261,6 +261,16 @@ event_listener_getfd(struct evconnlistener *lev)
|
||||
return event_get_fd(&lev_e->listener);
|
||||
}
|
||||
|
||||
int
|
||||
evconnlistener_get_address(struct evconnlistener *lev,
|
||||
struct sockaddr *sa, ev_socklen_t *socklen)
|
||||
{
|
||||
evutil_socket_t s = evconnlistener_get_fd(lev);
|
||||
if (s <= 0)
|
||||
return -1;
|
||||
return getsockname(s, sa, socklen);
|
||||
}
|
||||
|
||||
struct event_base *
|
||||
evconnlistener_get_base(struct evconnlistener *lev)
|
||||
{
|
||||
|
Loading…
x
Reference in New Issue
Block a user