~donmcc/ood

feb96d8ea4ddbe44447f177d2cab0e21a2fea207 — Don McCaughey 10 months ago 129d2e0
Add `sa_bind()` and `sa_connect()` inline wrappers.

These are convenience wrappers for calling `bind()` and `connect()`.
3 files changed, 20 insertions(+), 1 deletions(-)

M src/libood/ood/inet/socket.c
M src/sa/sa.c
M src/sa/sa.h
M src/libood/ood/inet/socket.c => src/libood/ood/inet/socket.c +1 -1
@@ 116,7 116,7 @@ ood_inet_socket_listen(struct ood_inet_socket *listener, int backlog)
        return ood_error;
    }

    int result = bind(listener->fd, &listener->address->generic, sizeof listener->address->ipv4);
    int result = sa_bind(listener->fd, listener->address);
    if (result < 0) {
        close_socket(listener);
        return ood_error;

M src/sa/sa.c => src/sa/sa.c +6 -0
@@ 129,3 129,9 @@ sa_str(struct sa_address const *address)
        default: return "(unsupported)";
    }
}

extern int
sa_bind(int socket, struct sa_address const *address);

extern int
sa_connect(int socket, struct sa_address const *address);

M src/sa/sa.h => src/sa/sa.h +13 -0
@@ 67,4 67,17 @@ char const *
sa_str(struct sa_address const *address);


inline int
sa_bind(int socket, struct sa_address const *address)
{
    return bind(socket, &address->generic, sa_len(address));
}

inline int
sa_connect(int socket, struct sa_address const *address)
{
    return connect(socket, &address->generic, sa_len(address));
}


#endif