Move APRS-IS connection code to aprs_is_connect()
Move APRS-IS connection code to aprs_is_connect() in src/aprs_is.c
This commit is contained in:
parent
52350ad0e8
commit
606237606d
1 changed files with 31 additions and 16 deletions
|
@ -89,9 +89,8 @@ error_send_va:
|
|||
return -1;
|
||||
}
|
||||
|
||||
patty_ax25_aprs_is *patty_ax25_aprs_is_new(patty_ax25_aprs_is_info *info) {
|
||||
patty_ax25_aprs_is *aprs;
|
||||
|
||||
static int aprs_is_connect(patty_ax25_aprs_is *aprs,
|
||||
patty_ax25_aprs_is_info *info) {
|
||||
struct addrinfo *ai0,
|
||||
*ai;
|
||||
|
||||
|
@ -99,17 +98,6 @@ patty_ax25_aprs_is *patty_ax25_aprs_is_new(patty_ax25_aprs_is_info *info) {
|
|||
goto error_getaddrinfo;
|
||||
}
|
||||
|
||||
if ((aprs = malloc(sizeof(*aprs))) == NULL) {
|
||||
goto error_malloc_aprs;
|
||||
}
|
||||
|
||||
memset(aprs, '\0', sizeof(*aprs));
|
||||
|
||||
aprs->rx_bufsz = PATTY_AX25_APRS_IS_PACKET_MAX;
|
||||
aprs->tx_bufsz = PATTY_AX25_APRS_IS_FRAME_MAX;
|
||||
aprs->infosz = PATTY_AX25_APRS_IS_PAYLOAD_MAX;
|
||||
aprs->state = APRS_IS_HEADER;
|
||||
|
||||
for (ai=ai0; ai; ai=ai->ai_next) {
|
||||
if ((aprs->fd = socket(ai->ai_family,
|
||||
ai->ai_socktype,
|
||||
|
@ -135,15 +123,42 @@ patty_ax25_aprs_is *patty_ax25_aprs_is_new(patty_ax25_aprs_is_info *info) {
|
|||
goto error_send_fmt;
|
||||
}
|
||||
|
||||
return aprs;
|
||||
return 0;
|
||||
}
|
||||
|
||||
error_send_fmt:
|
||||
close(aprs->fd);
|
||||
|
||||
error_getaddrinfo:
|
||||
return -1;
|
||||
}
|
||||
|
||||
patty_ax25_aprs_is *patty_ax25_aprs_is_new(patty_ax25_aprs_is_info *info) {
|
||||
patty_ax25_aprs_is *aprs;
|
||||
|
||||
if ((aprs = malloc(sizeof(*aprs))) == NULL) {
|
||||
goto error_malloc_aprs;
|
||||
}
|
||||
|
||||
memset(aprs, '\0', sizeof(*aprs));
|
||||
|
||||
aprs->rx_bufsz = PATTY_AX25_APRS_IS_PACKET_MAX;
|
||||
aprs->tx_bufsz = PATTY_AX25_APRS_IS_FRAME_MAX;
|
||||
aprs->infosz = PATTY_AX25_APRS_IS_PAYLOAD_MAX;
|
||||
aprs->state = APRS_IS_HEADER;
|
||||
|
||||
if (aprs_is_connect(aprs, info) < 0) {
|
||||
goto error_connect;
|
||||
}
|
||||
|
||||
return aprs;
|
||||
|
||||
error_connect:
|
||||
close(aprs->fd);
|
||||
|
||||
free(aprs);
|
||||
|
||||
error_malloc_aprs:
|
||||
error_getaddrinfo:
|
||||
return NULL;
|
||||
}
|
||||
|
||||
|
|
Loading…
Add table
Reference in a new issue