summaryrefslogtreecommitdiffstatshomepage
path: root/cc3200
diff options
context:
space:
mode:
Diffstat (limited to 'cc3200')
-rw-r--r--cc3200/ftp/ftp.c11
-rw-r--r--cc3200/telnet/telnet.c11
2 files changed, 14 insertions, 8 deletions
diff --git a/cc3200/ftp/ftp.c b/cc3200/ftp/ftp.c
index df28e78d02..889b4191e5 100644
--- a/cc3200/ftp/ftp.c
+++ b/cc3200/ftp/ftp.c
@@ -443,19 +443,22 @@ static bool ftp_create_listening_socket (_i16 *sd, _u16 port, _u8 backlog) {
// Enable non-blocking mode
nonBlockingOption.NonblockingEnabled = 1;
- ASSERT (sl_SetSockOpt(_sd, SOL_SOCKET, SL_SO_NONBLOCKING, &nonBlockingOption, sizeof(nonBlockingOption)) == SL_SOC_OK);
+ ASSERT ((result = sl_SetSockOpt(_sd, SOL_SOCKET, SL_SO_NONBLOCKING, &nonBlockingOption, sizeof(nonBlockingOption))) == SL_SOC_OK);
// Bind the socket to a port number
sServerAddress.sin_family = AF_INET;
sServerAddress.sin_addr.s_addr = INADDR_ANY;
sServerAddress.sin_port = htons(port);
- ASSERT (sl_Bind(_sd, (const SlSockAddr_t *)&sServerAddress, sizeof(sServerAddress)) == SL_SOC_OK);
+ ASSERT ((result |= sl_Bind(_sd, (const SlSockAddr_t *)&sServerAddress, sizeof(sServerAddress))) == SL_SOC_OK);
// Start listening
- ASSERT ((result = sl_Listen (_sd, backlog)) == SL_SOC_OK);
+ ASSERT ((result |= sl_Listen (_sd, backlog)) == SL_SOC_OK);
- return (result == SL_SOC_OK) ? true : false;
+ if (result == SL_SOC_OK) {
+ return true;
+ }
+ servers_close_socket(sd);
}
return false;
}
diff --git a/cc3200/telnet/telnet.c b/cc3200/telnet/telnet.c
index 66968fbd62..485ed522cb 100644
--- a/cc3200/telnet/telnet.c
+++ b/cc3200/telnet/telnet.c
@@ -334,19 +334,22 @@ static bool telnet_create_socket (void) {
// Enable non-blocking mode
nonBlockingOption.NonblockingEnabled = 1;
- ASSERT (sl_SetSockOpt(telnet_data.sd, SOL_SOCKET, SL_SO_NONBLOCKING, &nonBlockingOption, sizeof(nonBlockingOption)) == SL_SOC_OK);
+ ASSERT ((result = sl_SetSockOpt(telnet_data.sd, SOL_SOCKET, SL_SO_NONBLOCKING, &nonBlockingOption, sizeof(nonBlockingOption))) == SL_SOC_OK);
// Bind the socket to a port number
sServerAddress.sin_family = AF_INET;
sServerAddress.sin_addr.s_addr = INADDR_ANY;
sServerAddress.sin_port = htons(TELNET_PORT);
- ASSERT (sl_Bind(telnet_data.sd, (const SlSockAddr_t *)&sServerAddress, sizeof(sServerAddress)) == SL_SOC_OK);
+ ASSERT ((result |= sl_Bind(telnet_data.sd, (const SlSockAddr_t *)&sServerAddress, sizeof(sServerAddress))) == SL_SOC_OK);
// Start listening
- ASSERT ((result = sl_Listen (telnet_data.sd, TELNET_MAX_CLIENTS)) == SL_SOC_OK);
+ ASSERT ((result |= sl_Listen (telnet_data.sd, TELNET_MAX_CLIENTS)) == SL_SOC_OK);
- return (result == SL_SOC_OK) ? true : false;
+ if (result == SL_SOC_OK) {
+ return true;
+ }
+ servers_close_socket(&telnet_data.sd);
}
return false;