summaryrefslogtreecommitdiff
path: root/src/core/socket.c
diff options
context:
space:
mode:
authorYu Watanabe <watanabe.yu+github@gmail.com>2018-08-27 14:01:46 +0900
committerYu Watanabe <watanabe.yu+github@gmail.com>2018-08-27 14:01:46 +0900
commit8301aa0bf145099e55443b8c10d00a62d20e0d29 (patch)
treedee970b9c80b599a83143e255d634e1293c89254 /src/core/socket.c
parenta6a08596ef8f3b33677704e72f51f9765af59bb4 (diff)
downloadsystemd-8301aa0bf145099e55443b8c10d00a62d20e0d29.tar.gz
tree-wide: use DEFINE_TRIVIAL_REF_UNREF_FUNC() macro or friends where applicable
Diffstat (limited to 'src/core/socket.c')
-rw-r--r--src/core/socket.c24
1 files changed, 4 insertions, 20 deletions
diff --git a/src/core/socket.c b/src/core/socket.c
index 1dcd8162f4..92cf181541 100644
--- a/src/core/socket.c
+++ b/src/core/socket.c
@@ -547,26 +547,8 @@ static SocketPeer *socket_peer_new(void) {
return p;
}
-SocketPeer *socket_peer_ref(SocketPeer *p) {
- if (!p)
- return NULL;
-
- assert(p->n_ref > 0);
- p->n_ref++;
-
- return p;
-}
-
-SocketPeer *socket_peer_unref(SocketPeer *p) {
- if (!p)
- return NULL;
-
- assert(p->n_ref > 0);
-
- p->n_ref--;
-
- if (p->n_ref > 0)
- return NULL;
+static SocketPeer *socket_peer_free(SocketPeer *p) {
+ assert(p);
if (p->socket)
set_remove(p->socket->peers_by_address, p);
@@ -574,6 +556,8 @@ SocketPeer *socket_peer_unref(SocketPeer *p) {
return mfree(p);
}
+DEFINE_TRIVIAL_REF_UNREF_FUNC(SocketPeer, socket_peer, socket_peer_free);
+
int socket_acquire_peer(Socket *s, int fd, SocketPeer **p) {
_cleanup_(socket_peer_unrefp) SocketPeer *remote = NULL;
SocketPeer sa = {}, *i;