From 5f8b7a8ea0f928a60a67068408fd7a798024a877 Mon Sep 17 00:00:00 2001 From: Ian Jackson Date: Fri, 26 Sep 2014 19:26:49 +0100 Subject: [PATCH] udp: Break out udp_destroy_socket polypath is are going to want this. No functional change. Signed-off-by: Ian Jackson --- comm-common.h | 3 +++ udp.c | 13 +++++++++---- 2 files changed, 12 insertions(+), 4 deletions(-) diff --git a/comm-common.h b/comm-common.h index ed6a86b..baeb24e 100644 --- a/comm-common.h +++ b/comm-common.h @@ -87,6 +87,9 @@ bool_t udp_make_socket(struct udpcommon *uc, struct udpsock *us, int failmsgclass); /* Fills in us->fd. Logs any errors with lg_[v]perror. */ +void udp_destroy_socket(struct udpcommon *uc, struct udpsock *us); + /* Idempotent. No errors are possible. */ + void udp_socks_register(struct udpcommon *uc, struct udpsocks *socks); void udp_socks_deregister(struct udpcommon *uc, struct udpsocks *socks); diff --git a/udp.c b/udp.c index 838fd51..30bf73f 100644 --- a/udp.c +++ b/udp.c @@ -183,6 +183,14 @@ static bool_t udp_sendmsg(void *commst, struct buffer_if *buf, return True; } +void udp_destroy_socket(struct udpcommon *uc, struct udpsock *us) +{ + if (us->fd>=0) { + close(us->fd); + us->fd=-1; + } +} + bool_t udp_make_socket(struct udpcommon *uc, struct udpsock *us, int failmsgclass) { @@ -276,10 +284,7 @@ bool_t udp_make_socket(struct udpcommon *uc, struct udpsock *us, return True; failed: - if (us->fd>=0) { - close(us->fd); - us->fd=-1; - } + udp_destroy_socket(uc,us); return False; #undef FAIL -- 2.30.2