]> Kevux Git Server - fll/commitdiff
Update: Make more socket error codes more granular, add additional status codes,...
authorKevin Day <Kevin@kevux.org>
Wed, 26 Nov 2025 19:08:04 +0000 (13:08 -0600)
committerKevin Day <Kevin@kevux.org>
Wed, 26 Nov 2025 19:08:04 +0000 (13:08 -0600)
24 files changed:
level_0/f_socket/c/socket.c
level_0/f_socket/c/socket.h
level_0/f_socket/tests/unit/c/test-socket-accept.c
level_0/f_socket/tests/unit/c/test-socket-bind.c
level_0/f_socket/tests/unit/c/test-socket-connect.c
level_0/f_socket/tests/unit/c/test-socket-name_host.c
level_0/f_socket/tests/unit/c/test-socket-name_peer.c
level_0/f_socket/tests/unit/c/test-socket-option_get.c
level_0/f_socket/tests/unit/c/test-socket-option_set.c
level_0/f_socket/tests/unit/c/test-socket-read.c
level_0/f_socket/tests/unit/c/test-socket-read_message.c
level_0/f_socket/tests/unit/c/test-socket-read_stream.c
level_0/f_socket/tests/unit/c/test-socket-write.c
level_0/f_socket/tests/unit/c/test-socket-write_message.c
level_0/f_socket/tests/unit/c/test-socket-write_stream.c
level_0/f_status/c/status.h
level_0/f_status_string/c/status_string.c
level_0/f_status_string/c/status_string.h
level_0/f_status_string/tests/unit/c/test-status_string-to.c
level_1/fl_status_string/c/status_string.c
level_1/fl_status_string/tests/unit/c/test-status_string-from.c
level_2/fll_error/c/error/string.c
level_2/fll_error/c/error/string.h
level_2/fll_error/c/private-error.c

index c91125dc4beae061a8da7b56528fbe7a19b6f8f9..0bc9e4af049142f12ab20a6727fd133af2c6e7f0 100644 (file)
@@ -16,26 +16,26 @@ extern "C" {
       if (errno == EACCES) return F_status_set_error(F_access_denied);
       if (errno == EAGAIN || errno == EWOULDBLOCK) return F_status_set_error(F_socket_block);
       if (errno == EBADF) return F_status_set_error(F_file_descriptor);
-      if (errno == EFAULT) return F_status_set_error(F_buffer);
+      if (errno == EFAULT) return F_status_set_error(F_buffer_scope_out);
       if (errno == EHOSTDOWN) return F_status_set_error(F_network_client_not);
-      if (errno == EHOSTUNREACH) return F_status_set_error(F_network_reach_client_not);
+      if (errno == EHOSTUNREACH) return F_status_set_error(F_network_client_reach_not);
       if (errno == EINTR) return F_status_set_error(F_interrupt);
       if (errno == EINVAL) return F_status_set_error(F_parameter);
       if (errno == EMFILE) return F_status_set_error(F_file_descriptor_max);
-      if (errno == ENETDOWN) return F_status_set_error(F_network_not);
+      if (errno == ENETDOWN) return F_status_set_error(F_network_down);
       if (errno == ENFILE) return F_status_set_error(F_file_open_max);
       if (errno == ENETUNREACH) return F_status_set_error(F_network_reach_not);
       if (errno == ENOBUFS) return F_status_set_error(F_buffer_sufficient_not);
       if (errno == ENOMEM) return F_status_set_error(F_memory_not);
       if (errno == ENONET) return F_status_set_error(F_network_device_not);
-      if (errno == ENOPROTOOPT) return F_status_set_error(F_option_not);
+      if (errno == ENOPROTOOPT) return F_status_set_error(F_protocol_option_not);
       if (errno == ENOTSOCK) return F_status_set_error(F_socket_not);
-      if (errno == EOPNOTSUPP) return F_status_set_error(F_stream_not);
+      if (errno == EOPNOTSUPP) return F_status_set_error(F_socket_stream_not);
       if (errno == EPROTO) return F_status_set_error(F_protocol);
       if (errno == EPERM) return F_status_set_error(F_prohibited);
-      if (errno == ESOCKTNOSUPPORT) return F_status_set_error(F_support_not);
+      if (errno == ESOCKTNOSUPPORT) return F_status_set_error(F_socket_support_not);
       if (errno == EPROTONOSUPPORT) return F_status_set_error(F_protocol_not);
-      if (errno == ETIMEDOUT) return F_status_set_error(F_time_out);
+      if (errno == ETIMEDOUT) return F_status_set_error(F_socket_time_out);
 
       return F_status_set_error(F_failure);
     }
@@ -155,7 +155,7 @@ extern "C" {
       if (errno == EACCES) return F_status_set_error(F_access_denied);
       if (errno == EADDRINUSE) return F_status_set_error(F_busy_address);
       if (errno == EADDRNOTAVAIL) return F_status_set_error(F_available_not_address);
-      if (errno == EFAULT) return F_status_set_error(F_buffer);
+      if (errno == EFAULT) return F_status_set_error(F_buffer_scope_out);
       if (errno == EINVAL) return F_status_set_error(F_parameter);
       if (errno == ELOOP) return F_status_set_error(F_loop);
       if (errno == ENAMETOOLONG) return F_status_set_error(F_string_too_large);
@@ -285,7 +285,7 @@ extern "C" {
       if (errno == ENOTSOCK) return F_status_set_error(F_socket_not);
       if (errno == EPERM) return F_status_set_error(F_prohibited);
       if (errno == EPROTONOSUPPORT) return F_status_set_error(F_protocol_not);
-      if (errno == ETIMEDOUT) return F_status_set_error(F_time_out);
+      if (errno == ETIMEDOUT) return F_status_set_error(F_socket_time_out);
 
       return F_status_set_error(F_failure);
     }
@@ -433,10 +433,10 @@ extern "C" {
 
     if (getsockopt(socket->id, level, option, value, length) == -1) {
       if (errno == EBADF) return F_status_set_error(F_file_descriptor);
-      if (errno == EFAULT) return F_status_set_error(F_buffer);
+      if (errno == EFAULT) return F_status_set_error(F_buffer_scope_out);
       if (errno == EINVAL) return F_status_set_error(F_value);
       if (errno == ENOTSOCK) return F_status_set_error(F_socket_not);
-      if (errno == ENOPROTOOPT) return F_status_set_error(F_option_not);
+      if (errno == ENOPROTOOPT) return F_status_set_error(F_protocol_option_not);
 
       return F_status_set_error(F_failure);
     }
@@ -454,10 +454,10 @@ extern "C" {
 
     if (setsockopt(socket->id, level, option, value, length) == -1) {
       if (errno == EBADF) return F_status_set_error(F_file_descriptor);
-      if (errno == EFAULT) return F_status_set_error(F_buffer);
+      if (errno == EFAULT) return F_status_set_error(F_buffer_scope_out);
       if (errno == EINVAL) return F_status_set_error(F_value);
       if (errno == ENOTSOCK) return F_status_set_error(F_socket_not);
-      if (errno == ENOPROTOOPT) return F_status_set_error(F_option_not);
+      if (errno == ENOPROTOOPT) return F_status_set_error(F_protocol_option_not);
 
       return F_status_set_error(F_failure);
     }
@@ -480,7 +480,7 @@ extern "C" {
 
     {
       if (gethostname(name->string, (size_t) (name->used ? (name->size - name->used) : name->size)) == -1) {
-        if (errno == EFAULT) return F_status_set_error(F_buffer);
+        if (errno == EFAULT) return F_status_set_error(F_buffer_not);
         if (errno == EINVAL) return F_status_set_error(F_parameter);
         if (errno == ENAMETOOLONG) return F_status_set_error(F_string_too_large);
         if (errno == EPERM) return F_status_set_error(F_prohibited);
@@ -505,7 +505,7 @@ extern "C" {
 
     if (getpeername(socket->id, (struct sockaddr *) &socket->address.generic, &socket->length) == -1) {
       if (errno == EBADF) return F_status_set_error(F_file_descriptor);
-      if (errno == EFAULT) return F_status_set_error(F_buffer);
+      if (errno == EFAULT) return F_status_set_error(F_buffer_scope_out);
       if (errno == EINVAL) return F_status_set_error(F_parameter);
       if (errno == ENOBUFS) return F_status_set_error(F_buffer_sufficient_not);
       if (errno == ENOTCONN) return F_status_set_error(F_connect_not);
@@ -537,16 +537,16 @@ extern "C" {
       if (errno == ECONNREFUSED) return F_status_set_error(F_connect_refuse);
       if (errno == ECONNRESET) return F_status_set_error(F_connect_reset);
       if (errno == EDESTADDRREQ) return F_status_set_error(F_address_not);
-      if (errno == EFAULT) return F_status_set_error(F_buffer);
+      if (errno == EFAULT) return F_status_set_error(F_buffer_scope_out);
       if (errno == EINTR) return F_status_set_error(F_interrupt);
       if (errno == EINVAL) return F_status_set_error(F_parameter);
       if (errno == ENOMEM) return F_status_set_error(F_memory_not);
       if (errno == ENOTCONN) return F_status_set_error(F_connect_not);
       if (errno == ENOTSOCK) return F_status_set_error(F_socket_not);
-      if (errno == EOPNOTSUPP) return F_status_set_error(F_option_not);
+      if (errno == EOPNOTSUPP) return F_status_set_error(F_socket_option_not);
       if (errno == EPERM) return F_status_set_error(F_prohibited);
       if (errno == EPIPE) return F_status_set_error(F_pipe);
-      if (errno == ETIMEDOUT) return F_status_set_error(F_time_out);
+      if (errno == ETIMEDOUT) return F_status_set_error(F_socket_time_out);
 
       return F_status_set_error(F_failure);
     }
@@ -578,7 +578,7 @@ extern "C" {
       if (errno == ECONNREFUSED) return F_status_set_error(F_connect_refuse);
       if (errno == ECONNRESET) return F_status_set_error(F_connect_reset);
       if (errno == EDESTADDRREQ) return F_status_set_error(F_address_not);
-      if (errno == EFAULT) return F_status_set_error(F_buffer);
+      if (errno == EFAULT) return F_status_set_error(F_buffer_scope_out);
       if (errno == EINTR) return F_status_set_error(F_interrupt);
       if (errno == EINVAL) return F_status_set_error(F_parameter);
       if (errno == ENOMEM) return F_status_set_error(F_memory_not);
@@ -587,7 +587,7 @@ extern "C" {
       if (errno == EOPNOTSUPP) return F_status_set_error(F_option_not);
       if (errno == EPERM) return F_status_set_error(F_prohibited);
       if (errno == EPIPE) return F_status_set_error(F_pipe);
-      if (errno == ETIMEDOUT) return F_status_set_error(F_time_out);
+      if (errno == ETIMEDOUT) return F_status_set_error(F_socket_time_out);
 
       return F_status_set_error(F_failure);
     }
@@ -619,7 +619,7 @@ extern "C" {
       if (errno == ECONNREFUSED) return F_status_set_error(F_connect_refuse);
       if (errno == ECONNRESET) return F_status_set_error(F_connect_reset);
       if (errno == EDESTADDRREQ) return F_status_set_error(F_address_not);
-      if (errno == EFAULT) return F_status_set_error(F_buffer);
+      if (errno == EFAULT) return F_status_set_error(F_buffer_scope_out);
       if (errno == EINTR) return F_status_set_error(F_interrupt);
       if (errno == EINVAL) return F_status_set_error(F_parameter);
       if (errno == ENOMEM) return F_status_set_error(F_memory_not);
@@ -628,7 +628,7 @@ extern "C" {
       if (errno == EOPNOTSUPP) return F_status_set_error(F_option_not);
       if (errno == EPERM) return F_status_set_error(F_prohibited);
       if (errno == EPIPE) return F_status_set_error(F_pipe);
-      if (errno == ETIMEDOUT) return F_status_set_error(F_time_out);
+      if (errno == ETIMEDOUT) return F_status_set_error(F_socket_time_out);
 
       return F_status_set_error(F_failure);
     }
@@ -660,7 +660,7 @@ extern "C" {
       if (errno == ECONNREFUSED) return F_status_set_error(F_connect_refuse);
       if (errno == ECONNRESET) return F_status_set_error(F_connect_reset);
       if (errno == EDESTADDRREQ) return F_status_set_error(F_address_not);
-      if (errno == EFAULT) return F_status_set_error(F_buffer);
+      if (errno == EFAULT) return F_status_set_error(F_buffer_not);
       if (errno == EINTR) return F_status_set_error(F_interrupt);
       if (errno == EINVAL) return F_status_set_error(F_parameter);
       if (errno == EISCONN) return F_status_set_error(F_connect);
@@ -672,7 +672,7 @@ extern "C" {
       if (errno == EOPNOTSUPP) return F_status_set_error(F_option_not);
       if (errno == EPERM) return F_status_set_error(F_prohibited);
       if (errno == EPIPE) return F_status_set_error(F_pipe);
-      if (errno == ETIMEDOUT) return F_status_set_error(F_time_out);
+      if (errno == ETIMEDOUT) return F_status_set_error(F_socket_time_out);
 
       return F_status_set_error(F_failure);
     }
@@ -704,7 +704,7 @@ extern "C" {
       if (errno == ECONNREFUSED) return F_status_set_error(F_connect_refuse);
       if (errno == ECONNRESET) return F_status_set_error(F_connect_reset);
       if (errno == EDESTADDRREQ) return F_status_set_error(F_address_not);
-      if (errno == EFAULT) return F_status_set_error(F_buffer);
+      if (errno == EFAULT) return F_status_set_error(F_buffer_not);
       if (errno == EINTR) return F_status_set_error(F_interrupt);
       if (errno == EINVAL) return F_status_set_error(F_parameter);
       if (errno == EISCONN) return F_status_set_error(F_connect);
@@ -716,7 +716,7 @@ extern "C" {
       if (errno == EOPNOTSUPP) return F_status_set_error(F_option_not);
       if (errno == EPERM) return F_status_set_error(F_prohibited);
       if (errno == EPIPE) return F_status_set_error(F_pipe);
-      if (errno == ETIMEDOUT) return F_status_set_error(F_time_out);
+      if (errno == ETIMEDOUT) return F_status_set_error(F_socket_time_out);
 
       return F_status_set_error(F_failure);
     }
@@ -748,7 +748,7 @@ extern "C" {
       if (errno == ECONNREFUSED) return F_status_set_error(F_connect_refuse);
       if (errno == ECONNRESET) return F_status_set_error(F_connect_reset);
       if (errno == EDESTADDRREQ) return F_status_set_error(F_address_not);
-      if (errno == EFAULT) return F_status_set_error(F_buffer);
+      if (errno == EFAULT) return F_status_set_error(F_buffer_not);
       if (errno == EINTR) return F_status_set_error(F_interrupt);
       if (errno == EINVAL) return F_status_set_error(F_parameter);
       if (errno == EISCONN) return F_status_set_error(F_connect);
@@ -760,7 +760,7 @@ extern "C" {
       if (errno == EOPNOTSUPP) return F_status_set_error(F_option_not);
       if (errno == EPERM) return F_status_set_error(F_prohibited);
       if (errno == EPIPE) return F_status_set_error(F_pipe);
-      if (errno == ETIMEDOUT) return F_status_set_error(F_time_out);
+      if (errno == ETIMEDOUT) return F_status_set_error(F_socket_time_out);
 
       return F_status_set_error(F_failure);
     }
index d37a610ecfeb87bef73691c706696421a997787d..41bb414f87020781869a2c45bd65cf15970247f5 100644 (file)
@@ -71,7 +71,7 @@ extern "C" {
  *   F_okay on success.
  *
  *   F_access_denied (with error bit) on access denied.
- *   F_buffer (with error bit) if the buffer is invalid.
+ *   F_buffer_scope_out (with error bit) if the buffer is invalid.
  *   F_buffer_sufficient_not (with error bit) if unable to create socket due to resource restrictions (maps to ENOBUFS).
  *   F_file_descriptor (with error bit) if ID is an invalid descriptor.
  *   F_file_descriptor_max (with error bit) if max file descriptors is reached.
@@ -80,19 +80,19 @@ extern "C" {
  *   F_memory_not (with error bit) if out of memory.
  *   F_network_client_not (with error bit) if the client is down.
  *   F_network_device_not (with error bit) if the network device no longer exists.
- *   F_network_not (with error bit) if network is down.
- *   F_network_reach_client_not (with error bit) if the client cannot be reached.
+ *   F_network_down (with error bit) if network is down.
+ *   F_network_client_reach_not (with error bit) if the client cannot be reached.
  *   F_network_reach_not (with error bit) if the network cannot be reached.
- *   F_option_not (with error bit) if the given option is unknown or is unsupported.
  *   F_parameter (with error bit) if a parameter is invalid.
  *   F_prohibited (with error bit) if the file system does not permit this operation.
  *   F_protocol (with error bit) if a protocol error occurred.
  *   F_protocol_not (with error bit) if the given protocol is unknown or is unsupported.
+ *   F_protocol_option_not (with error bit) if the given protocol option is unknown or is unsupported.
  *   F_socket_block (with error bit) if socket is blocked.
  *   F_socket_not (with error bit) if the ID is not a socket descriptor.
- *   F_stream_not (with error bit) the socket type is not a stream.
- *   F_support_not (with error bit) if this socket type is not supported.
- *   F_time_out (with error bit) if a timeout occurred.
+ *   F_socket_stream_not (with error bit) the socket type is not a stream.
+ *   F_socket_support_not (with error bit) if this socket type is not supported.
+ *   F_socket_time_out (with error bit) if a socket timeout occurred.
  *
  *   F_failure (with error bit) for any other error.
  *
@@ -144,9 +144,8 @@ extern "C" {
  * @return
  *   F_okay on success.
  *
- *   F_address (with error bit) if address is already in use (therefore unavailable).
  *   F_available_not_address (with error bit) if address is unavailable (is non-existent or not local).
- *   F_buffer (with error bit) if the buffer is invalid.
+ *   F_buffer_scope_out (with error bit) if the buffer is out of scope.
  *   F_busy_address (with error bit) if address is already in use (therefore unavailable).
  *   F_directory_found_not (with error bit) if directory was not found.
  *   F_file_found_not (with error bit) if file not found.
@@ -199,7 +198,7 @@ extern "C" {
  *   F_protocol_not (with error bit) if the given protocol is unknown or is unsupported.
  *   F_socket_block (with error bit) if socket is blocked.
  *   F_socket_not (with error bit) if the ID is not a socket descriptor.
- *   F_time_out (with error bit) if a timeout occurred.
+ *   F_socket_time_out (with error bit) if a socket timeout occurred.
  *
  *   F_failure (with error bit) for any other error.
  *
@@ -390,9 +389,9 @@ extern "C" {
  * @return
  *   F_okay on success.
  *
- *   F_buffer (with error bit) if the given value is out of scope.
+ *   F_buffer_scope_out (with error bit) if the given address is out of scope.
  *   F_file_descriptor (with error bit) if ID is an invalid descriptor.
- *   F_option_not (with error bit) if the type is not valid for the given level.
+ *   F_protocol_option_not (with error bit) if the given protocol option is unknown or is unsupported.
  *   F_socket_not (with error bit) if the ID is not a socket descriptor.
  *   F_value (with error bit) if either the value or the length is invalid.
  *
@@ -427,9 +426,9 @@ extern "C" {
  * @return
  *   F_okay on success.
  *
- *   F_buffer (with error bit) if the given value is out of scope.
+ *   F_buffer_scope_out (with error bit) if the given value is out of scope.
  *   F_file_descriptor (with error bit) if ID is an invalid descriptor.
- *   F_option_not (with error bit) if the type is not valid for the given level.
+ *   F_protocol_option_not (with error bit) if the given protocol option is unknown or is unsupported.
  *   F_socket_not (with error bit) if the ID is not a socket descriptor.
  *   F_value (with error bit) if either the value or the length is invalid.
  *
@@ -462,7 +461,7 @@ extern "C" {
  * @return
  *   F_okay on success.
  *
- *   F_buffer (with error bit) if the buffer is invalid.
+ *   F_buffer_not (with error bit) if the name buffer is invalid.
  *   F_parameter (with error bit) if a parameter is invalid.
  *   F_prohibited (with error bit) if the system does not permit this operation (could be missing CAP_SYS_ADMIN in the appropraite user namespace).
  *   F_string_too_large (with error bit) if the name is to large for the max size (name.size).
@@ -496,10 +495,10 @@ extern "C" {
  * @return
  *   F_okay on success.
  *
- *   F_file_descriptor (with error bit) if ID is an invalid descriptor.
- *   F_buffer (with error bit) if the buffer is invalid.
+ *   F_buffer_scope_out (with error bit) if the buffer is invalid.
  *   F_buffer_sufficient_not (with error bit) due to resource restrictions (maps to ENOBUFS).
  *   F_connect_not (with error bit) if the socket is not connected.
+ *   F_file_descriptor (with error bit) if ID is an invalid descriptor.
  *   F_parameter (with error bit) if a parameter is invalid.
  *   F_socket_not (with error bit) if the ID is not a socket descriptor.
  *
@@ -542,21 +541,22 @@ extern "C" {
  *   F_data_not on success, but read size is 0 and so nothing was read.
  *
  *   F_access_denied (with error bit) on access denied.
+ *   F_address_not (with error bit) if no address is provided and the connection is not "connection-mode".
+ *   F_buffer_scope_out (with error bit) if the buffer is out of scope.
  *   F_complete_not (with error bit) if an existing connection is not yet complete.
  *   F_connect_not (with error bit) if the socket is not connected.
  *   F_connect_refuse (with error bit) if connection is refused.
  *   F_connect_reset (with error bit) if connection is reset.
- *   F_buffer (with error bit) if the buffer is invalid.
  *   F_file_descriptor (with error bit) if ID is an invalid descriptor.
  *   F_interrupt (with error bit) if interrupt is received.
  *   F_memory_not (with error bit) if out of memory.
- *   F_option_not (with error bit) if a flag is not supported.
+ *   F_socket_option_not (with error bit) if the given protocol option is unknown or is unsupported.
  *   F_parameter (with error bit) if a parameter is invalid.
  *   F_pipe (with error bit) if the local end of a connection oriented socket is closed or SIGPIPE is received.
  *   F_prohibited (with error bit) if the insufficient privileges to perform read.
  *   F_socket_block (with error bit) if socket is blocked.
- *   F_socket_not (with error bit) if the ID is not a socket descriptor.
- *   F_time_out (with error bit) if a timeout occurred.
+ *   F_socket_not (with error bit) if the ID is not a valid socket descriptor.
+ *   F_socket_time_out (with error bit) if a socket timeout occurred.
  *
  *   F_failure (with error bit) for any other error.
  *
@@ -592,11 +592,12 @@ extern "C" {
  *   F_data_not on success, but read size is 0 and so nothing was read.
  *
  *   F_access_denied (with error bit) on access denied.
+ *   F_address_not (with error bit) if no address is provided and the connection is not "connection-mode".
+ *   F_buffer_scope_out (with error bit) if the buffer is out of scope.
  *   F_complete_not (with error bit) if an existing connection is not yet complete.
  *   F_connect_not (with error bit) if the socket is not connected.
  *   F_connect_refuse (with error bit) if connection is refused.
  *   F_connect_reset (with error bit) if connection is reset.
- *   F_buffer (with error bit) if the buffer is invalid.
  *   F_file_descriptor (with error bit) if ID is an invalid descriptor.
  *   F_interrupt (with error bit) if interrupt is received.
  *   F_memory_not (with error bit) if out of memory.
@@ -606,7 +607,7 @@ extern "C" {
  *   F_prohibited (with error bit) if the insufficient privileges to perform read.
  *   F_socket_block (with error bit) if socket is blocked.
  *   F_socket_not (with error bit) if the ID is not a socket descriptor.
- *   F_time_out (with error bit) if a timeout occurred.
+ *   F_socket_time_out (with error bit) if a socket timeout occurred.
  *
  *   F_failure (with error bit) for any other error.
  *
@@ -647,11 +648,12 @@ extern "C" {
  *   F_data_not on success, but read size is 0 and so nothing was read.
  *
  *   F_access_denied (with error bit) on access denied.
+ *   F_address_not (with error bit) if no address is provided and the connection is not "connection-mode".
+ *   F_buffer_scope_out (with error bit) if the buffer is invalid.
  *   F_complete_not (with error bit) if an existing connection is not yet complete.
  *   F_connect_not (with error bit) if the socket is not connected.
  *   F_connect_refuse (with error bit) if connection is refused.
  *   F_connect_reset (with error bit) if connection is reset.
- *   F_buffer (with error bit) if the buffer is invalid.
  *   F_file_descriptor (with error bit) if ID is an invalid descriptor.
  *   F_interrupt (with error bit) if interrupt is received.
  *   F_memory_not (with error bit) if out of memory.
@@ -661,7 +663,7 @@ extern "C" {
  *   F_prohibited (with error bit) if the insufficient privileges to perform read.
  *   F_socket_block (with error bit) if socket is blocked.
  *   F_socket_not (with error bit) if the ID is not a socket descriptor.
- *   F_time_out (with error bit) if a timeout occurred.
+ *   F_socket_time_out (with error bit) if a socket timeout occurred.
  *
  *   F_failure (with error bit) for any other error.
  *
@@ -703,13 +705,13 @@ extern "C" {
  *
  *   F_access_denied (with error bit) on access denied.
  *   F_address_not (with error bit) if no address is provided and the connection is not "connection-mode".
+ *   F_buffer_not (with error bit) if the buffer is invalid.
  *   F_buffer_sufficient_not (with error bit) if unable to send message because output buffer is full.
  *   F_complete_not (with error bit) if an existing connection is not yet complete.
  *   F_connect (with error bit) if an address is provided and the connection is "connection-mode".
  *   F_connect_not (with error bit) if the socket is not connected.
  *   F_connect_refuse (with error bit) if connection is refused.
  *   F_connect_reset (with error bit) if connection is reset.
- *   F_buffer (with error bit) if the buffer is invalid.
  *   F_file_descriptor (with error bit) if ID is an invalid descriptor.
  *   F_interrupt (with error bit) if interrupt is received.
  *   F_memory_not (with error bit) if out of memory.
@@ -720,7 +722,7 @@ extern "C" {
  *   F_size (with error bit) if size of message makes atomically sending message impossible on a socket type that requires this to be atomic.
  *   F_socket_block (with error bit) if socket is blocked.
  *   F_socket_not (with error bit) if the ID is not a socket descriptor.
- *   F_time_out (with error bit) if a timeout occurred.
+ *   F_socket_time_out (with error bit) if a socket timeout occurred.
  *
  *   F_failure (with error bit) for any other error.
  *
@@ -757,13 +759,13 @@ extern "C" {
  *
  *   F_access_denied (with error bit) on access denied.
  *   F_address_not (with error bit) if no address is provided and the connection is not "connection-mode".
+ *   F_buffer_not (with error bit) if the buffer is invalid.
  *   F_buffer_sufficient_not (with error bit) if unable to send message because output buffer is full.
  *   F_complete_not (with error bit) if an existing connection is not yet complete.
  *   F_connect (with error bit) if an address is provided and the connection is "connection-mode".
  *   F_connect_not (with error bit) if the socket is not connected.
  *   F_connect_refuse (with error bit) if connection is refused.
  *   F_connect_reset (with error bit) if connection is reset.
- *   F_buffer (with error bit) if the buffer is invalid.
  *   F_file_descriptor (with error bit) if ID is an invalid descriptor.
  *   F_interrupt (with error bit) if interrupt is received.
  *   F_memory_not (with error bit) if out of memory.
@@ -774,7 +776,7 @@ extern "C" {
  *   F_size (with error bit) if size of message makes atomically sending message impossible on a socket type that requires this to be atomic.
  *   F_socket_block (with error bit) if socket is blocked.
  *   F_socket_not (with error bit) if the ID is not a socket descriptor.
- *   F_time_out (with error bit) if a timeout occurred.
+ *   F_socket_time_out (with error bit) if a socket timeout occurred.
  *
  *   F_failure (with error bit) for any other error.
  *
@@ -816,13 +818,13 @@ extern "C" {
  *
  *   F_access_denied (with error bit) on access denied.
  *   F_address_not (with error bit) if no address is provided and the connection is not "connection-mode".
+ *   F_buffer_not (with error bit) if the buffer is invalid.
  *   F_buffer_sufficient_not (with error bit) if unable to send message because output buffer is full.
  *   F_complete_not (with error bit) if an existing connection is not yet complete.
  *   F_connect (with error bit) if an address is provided and the connection is "connection-mode".
  *   F_connect_not (with error bit) if the socket is not connected.
  *   F_connect_refuse (with error bit) if connection is refused.
  *   F_connect_reset (with error bit) if connection is reset.
- *   F_buffer (with error bit) if the buffer is invalid.
  *   F_file_descriptor (with error bit) if ID is an invalid descriptor.
  *   F_interrupt (with error bit) if interrupt is received.
  *   F_memory_not (with error bit) if out of memory.
@@ -833,7 +835,7 @@ extern "C" {
  *   F_size (with error bit) if size of message makes atomically sending message impossible on a socket type that requires this to be atomic.
  *   F_socket_block (with error bit) if socket is blocked.
  *   F_socket_not (with error bit) if the ID is not a socket descriptor.
- *   F_time_out (with error bit) if a timeout occurred.
+ *   F_socket_time_out (with error bit) if a socket timeout occurred.
  *
  *   F_failure (with error bit) for any other error.
  *
index c5d19c538c4150ed137e0f08829a3548aadd785b..7f2ad79c7866f0cbc0ea1308e3215f5735d081e8 100644 (file)
@@ -41,26 +41,26 @@ void test__f_socket_accept__fails(void **state) {
     F_access_denied,
     F_socket_block,
     F_file_descriptor,
-    F_buffer,
+    F_buffer_scope_out,
     F_network_client_not,
-    F_network_reach_client_not,
+    F_network_client_reach_not,
     F_interrupt,
     F_parameter,
     F_file_descriptor_max,
-    F_network_not,
+    F_network_down,
     F_file_open_max,
     F_network_reach_not,
     F_buffer_sufficient_not,
     F_memory_not,
     F_network_device_not,
-    F_option_not,
+    F_protocol_option_not,
     F_socket_not,
-    F_stream_not,
+    F_socket_stream_not,
     F_protocol,
     F_prohibited,
-    F_support_not,
+    F_socket_support_not,
     F_protocol_not,
-    F_time_out,
+    F_socket_time_out,
     F_socket_block,
     F_failure,
   };
index 68fde1d720dc7a52a1fd321129e472c05ad88baf..bd670a308a058bb35287b74bf2a25e567959045a 100644 (file)
@@ -26,7 +26,7 @@ void test__f_socket_bind__fails(void **state) {
     F_access_denied,
     F_busy_address,
     F_available_not_address,
-    F_buffer,
+    F_buffer_scope_out,
     F_parameter,
     F_loop,
     F_string_too_large,
index c7493aa14c11531e97d478df759e91dc6b2dec97..a5a3dcaf1ed1c4b107943e8023ce0f0964322c9d 100644 (file)
@@ -49,7 +49,7 @@ void test__f_socket_connect__fails(void **state) {
     F_socket_not,
     F_prohibited,
     F_protocol_not,
-    F_time_out,
+    F_socket_time_out,
     F_failure,
   };
 
index 7f675ae7b57056f5f123ee5207eb2cdc0d691a32..c76ad48c6e757afe9fcc4bcca7215a8dd2d410ef 100644 (file)
@@ -41,7 +41,7 @@ void test__f_socket_name_host__fails(void **state) {
   };
 
   f_status_t statuss[] = {
-    F_buffer,
+    F_buffer_not,
     F_parameter,
     F_string_too_large,
     F_prohibited,
index 90d00ffa1a401a589bbfdea2929329c97ba18786..def7b9f631f67f32f98a1eec6f4d0722717c4b2c 100644 (file)
@@ -21,7 +21,7 @@ void test__f_socket_name_peer__fails(void **state) {
 
   f_status_t statuss[] = {
     F_file_descriptor,
-    F_buffer,
+    F_buffer_scope_out,
     F_parameter,
     F_buffer_sufficient_not,
     F_connect_not,
index 1e527e6761d80706b5000e1cc247141bcf0ed505..7296d2d23689ebf5fc5e6ef50cfa8ebc510523c4 100644 (file)
@@ -22,10 +22,10 @@ void test__f_socket_option_get__fails(void **state) {
 
   f_status_t statuss[] = {
     F_file_descriptor,
-    F_buffer,
+    F_buffer_scope_out,
     F_value,
     F_socket_not,
-    F_option_not,
+    F_protocol_option_not,
     F_failure,
   };
 
index bfc2ddd977c25127d8217e99a2bdc8c817026c3e..6e7e1c3865af451b68bf9aa616b215a42d09ca12 100644 (file)
@@ -21,10 +21,10 @@ void test__f_socket_option_set__fails(void **state) {
 
   f_status_t statuss[] = {
     F_file_descriptor,
-    F_buffer,
+    F_buffer_scope_out,
     F_value,
     F_socket_not,
-    F_option_not,
+    F_protocol_option_not,
     F_failure,
   };
 
index 11d908bb4fdd5777e22a6994a473275c0d3bb2eb..5d7809ccf5037700fb1b2fef44b0bf563a6bfd15 100644 (file)
@@ -41,16 +41,16 @@ void test__f_socket_read__fails(void **state) {
     F_connect_refuse,
     F_connect_reset,
     F_address_not,
-    F_buffer,
+    F_buffer_scope_out,
     F_interrupt,
     F_parameter,
     F_memory_not,
     F_connect_not,
     F_socket_not,
-    F_option_not,
+    F_socket_option_not,
     F_prohibited,
     F_pipe,
-    F_time_out,
+    F_socket_time_out,
     F_socket_block,
     F_failure,
   };
index ba856c9d002d4fe2786eda5d2df19f3e4bb48b45..79194684aa6c2a2c0ad0c2ce6a8c3609f70de616 100644 (file)
@@ -43,7 +43,7 @@ void test__f_socket_read_message__fails(void **state) {
     F_connect_refuse,
     F_connect_reset,
     F_address_not,
-    F_buffer,
+    F_buffer_scope_out,
     F_interrupt,
     F_parameter,
     F_memory_not,
@@ -52,7 +52,7 @@ void test__f_socket_read_message__fails(void **state) {
     F_option_not,
     F_prohibited,
     F_pipe,
-    F_time_out,
+    F_socket_time_out,
     F_socket_block,
     F_failure,
   };
index c856e1d66cd9d61c5e8caf2bd1d9f5dd017dd708..d8f27bc14667bb094fb6de225d01ac3fe69183c4 100644 (file)
@@ -41,7 +41,7 @@ void test__f_socket_read_stream__fails(void **state) {
     F_connect_refuse,
     F_connect_reset,
     F_address_not,
-    F_buffer,
+    F_buffer_scope_out,
     F_interrupt,
     F_parameter,
     F_memory_not,
@@ -50,7 +50,7 @@ void test__f_socket_read_stream__fails(void **state) {
     F_option_not,
     F_prohibited,
     F_pipe,
-    F_time_out,
+    F_socket_time_out,
     F_socket_block,
     F_failure,
   };
index 488f25166584e758263f037715e4fe87379d11b6..3c9daa1c5d6b0b9f02913aab8c0ab6adb401c359 100644 (file)
@@ -44,7 +44,7 @@ void test__f_socket_write__fails(void **state) {
     F_connect_refuse,
     F_connect_reset,
     F_address_not,
-    F_buffer,
+    F_buffer_not,
     F_interrupt,
     F_parameter,
     F_connect,
@@ -56,7 +56,7 @@ void test__f_socket_write__fails(void **state) {
     F_option_not,
     F_prohibited,
     F_pipe,
-    F_time_out,
+    F_socket_time_out,
     F_socket_block,
     F_failure,
   };
index 4354552d75647c5b22001a9cb49b0277a926e7b8..d3c401315706823f1dcda07eacb5315a6e876be9 100644 (file)
@@ -46,7 +46,7 @@ void test__f_socket_write_message__fails(void **state) {
     F_connect_refuse,
     F_connect_reset,
     F_address_not,
-    F_buffer,
+    F_buffer_not,
     F_interrupt,
     F_parameter,
     F_connect,
@@ -58,7 +58,7 @@ void test__f_socket_write_message__fails(void **state) {
     F_option_not,
     F_prohibited,
     F_pipe,
-    F_time_out,
+    F_socket_time_out,
     F_socket_block,
     F_failure,
   };
index 8f99f6c0aa12ce5bfe4373822425fe72edf4e6b6..11d4d5873d82b1eb5633f9c996dca2faf5e3a09f 100644 (file)
@@ -44,7 +44,7 @@ void test__f_socket_write_stream__fails(void **state) {
     F_connect_refuse,
     F_connect_reset,
     F_address_not,
-    F_buffer,
+    F_buffer_not,
     F_interrupt,
     F_parameter,
     F_connect,
@@ -56,7 +56,7 @@ void test__f_socket_write_stream__fails(void **state) {
     F_option_not,
     F_prohibited,
     F_pipe,
-    F_time_out,
+    F_socket_time_out,
     F_socket_block,
     F_failure,
   };
index 0b5f7a32e628816bd5a3a47d9dfb495e312b80b9..5d48998b6ae81ffac33233805d3d0f75f0a6843c 100644 (file)
@@ -316,6 +316,7 @@ extern "C" {
     F_buffer_not,
     F_buffer_overflow,
     F_buffer_restrict,
+    F_buffer_scope_out,
     F_buffer_sufficient,
     F_buffer_sufficient_not,
     F_buffer_too_large,
@@ -665,6 +666,8 @@ extern "C" {
     F_network_busy_not,
     F_network_client,
     F_network_client_not,
+    F_network_down,
+    F_network_down_not,
     F_network_device,
     F_network_device_not,
     F_network_found,
@@ -674,7 +677,7 @@ extern "C" {
     F_network_not,
     F_network_reach,
     F_network_reach_client,
-    F_network_reach_client_not,
+    F_network_client_reach_not,
     F_network_reach_not,
     F_network_reach_server,
     F_network_reach_server_not,
@@ -682,6 +685,8 @@ extern "C" {
     F_network_server_not,
     F_network_time,
     F_network_time_not,
+    F_network_up,
+    F_network_up_not,
     F_network_version_four,
     F_network_version_four_not,
     F_network_version_six,
@@ -764,6 +769,8 @@ extern "C" {
     F_property_not,
     F_protocol,
     F_protocol_not,
+    F_protocol_option,
+    F_protocol_option_not,
     F_range,
     F_range_not,
     F_read,
@@ -827,13 +834,25 @@ extern "C" {
     F_skip_not,
     F_socket,
     F_socket_block,
+    F_socket_block_not,
     F_socket_client,
+    F_socket_client_not,
     F_socket_not,
+    F_socket_option,
+    F_socket_option_not,
     F_socket_receive,
+    F_socket_receive_not,
     F_socket_send,
+    F_socket_send_not,
+    F_socket_stream,
+    F_socket_stream_not,
+    F_socket_support,
+    F_socket_support_not,
     F_socket_time,
     F_socket_time_not,
+    F_socket_time_out,
     F_socket_target,
+    F_socket_target_not,
     F_some,
     F_some_not,
     F_space,
index fcf040506ad0ecf5ce80893715c12ad380eb6421..9ac8d57c13d5ab26749d1599cc22ff71a55eeade 100644 (file)
@@ -157,6 +157,7 @@ extern "C" {
   const f_string_static_t f_status_buffer_not_s = macro_f_string_static_t_initialize_1(F_status_buffer_not_s, 0, F_status_buffer_not_s_length);
   const f_string_static_t f_status_buffer_overflow_s = macro_f_string_static_t_initialize_1(F_status_buffer_overflow_s, 0, F_status_buffer_overflow_s_length);
   const f_string_static_t f_status_buffer_restrict_s = macro_f_string_static_t_initialize_1(F_status_buffer_restrict_s, 0, F_status_buffer_restrict_s_length);
+  const f_string_static_t f_status_buffer_scope_out_s = macro_f_string_static_t_initialize_1(F_status_buffer_scope_out_s, 0, F_status_buffer_scope_out_s_length);
   const f_string_static_t f_status_buffer_sufficient_s = macro_f_string_static_t_initialize_1(F_status_buffer_sufficient_s, 0, F_status_buffer_sufficient_s_length);
   const f_string_static_t f_status_buffer_sufficient_not_s = macro_f_string_static_t_initialize_1(F_status_buffer_sufficient_not_s, 0, F_status_buffer_sufficient_not_s_length);
   const f_string_static_t f_status_buffer_too_large_s = macro_f_string_static_t_initialize_1(F_status_buffer_too_large_s, 0, F_status_buffer_too_large_s_length);
@@ -508,6 +509,8 @@ extern "C" {
   const f_string_static_t f_status_network_client_not_s = macro_f_string_static_t_initialize_1(F_status_network_client_not_s, 0, F_status_network_client_not_s_length);
   const f_string_static_t f_status_network_device_s = macro_f_string_static_t_initialize_1(F_status_network_device_s, 0, F_status_network_device_s_length);
   const f_string_static_t f_status_network_device_not_s = macro_f_string_static_t_initialize_1(F_status_network_device_not_s, 0, F_status_network_device_not_s_length);
+  const f_string_static_t f_status_network_down_s = macro_f_string_static_t_initialize_1(F_status_network_down_s, 0, F_status_network_down_s_length);
+  const f_string_static_t f_status_network_down_not_s = macro_f_string_static_t_initialize_1(F_status_network_down_not_s, 0, F_status_network_down_not_s_length);
   const f_string_static_t f_status_network_found_s = macro_f_string_static_t_initialize_1(F_status_network_found_s, 0, F_status_network_found_s_length);
   const f_string_static_t f_status_network_found_not_s = macro_f_string_static_t_initialize_1(F_status_network_found_not_s, 0, F_status_network_found_not_s_length);
   const f_string_static_t f_status_network_lost_s = macro_f_string_static_t_initialize_1(F_status_network_lost_s, 0, F_status_network_lost_s_length);
@@ -515,7 +518,7 @@ extern "C" {
   const f_string_static_t f_status_network_not_s = macro_f_string_static_t_initialize_1(F_status_network_not_s, 0, F_status_network_not_s_length);
   const f_string_static_t f_status_network_reach_s = macro_f_string_static_t_initialize_1(F_status_network_reach_s, 0, F_status_network_reach_s_length);
   const f_string_static_t f_status_network_reach_client_s = macro_f_string_static_t_initialize_1(F_status_network_reach_client_s, 0, F_status_network_reach_client_s_length);
-  const f_string_static_t f_status_network_reach_client_not_s = macro_f_string_static_t_initialize_1(F_status_network_reach_client_not_s, 0, F_status_network_reach_client_not_s_length);
+  const f_string_static_t f_status_network_client_reach_not_s = macro_f_string_static_t_initialize_1(F_status_network_client_reach_not_s, 0, F_status_network_client_reach_not_s_length);
   const f_string_static_t f_status_network_reach_not_s = macro_f_string_static_t_initialize_1(F_status_network_reach_not_s, 0, F_status_network_reach_not_s_length);
   const f_string_static_t f_status_network_reach_server_s = macro_f_string_static_t_initialize_1(F_status_network_reach_server_s, 0, F_status_network_reach_server_s_length);
   const f_string_static_t f_status_network_reach_server_not_s = macro_f_string_static_t_initialize_1(F_status_network_reach_server_not_s, 0, F_status_network_reach_server_not_s_length);
@@ -523,6 +526,8 @@ extern "C" {
   const f_string_static_t f_status_network_server_not_s = macro_f_string_static_t_initialize_1(F_status_network_server_not_s, 0, F_status_network_server_not_s_length);
   const f_string_static_t f_status_network_time_s = macro_f_string_static_t_initialize_1(F_status_network_time_s, 0, F_status_network_time_s_length);
   const f_string_static_t f_status_network_time_not_s = macro_f_string_static_t_initialize_1(F_status_network_time_not_s, 0, F_status_network_time_not_s_length);
+  const f_string_static_t f_status_network_up_s = macro_f_string_static_t_initialize_1(F_status_network_up_s, 0, F_status_network_up_s_length);
+  const f_string_static_t f_status_network_up_not_s = macro_f_string_static_t_initialize_1(F_status_network_up_not_s, 0, F_status_network_up_not_s_length);
   const f_string_static_t f_status_network_version_four_s = macro_f_string_static_t_initialize_1(F_status_network_version_four_s, 0, F_status_network_version_four_s_length);
   const f_string_static_t f_status_network_version_four_not_s = macro_f_string_static_t_initialize_1(F_status_network_version_four_not_s, 0, F_status_network_version_four_not_s_length);
   const f_string_static_t f_status_network_version_six_s = macro_f_string_static_t_initialize_1(F_status_network_version_six_s, 0, F_status_network_version_six_s_length);
@@ -612,6 +617,8 @@ extern "C" {
   const f_string_static_t f_status_property_not_s = macro_f_string_static_t_initialize_1(F_status_property_not_s, 0, F_status_property_not_s_length);
   const f_string_static_t f_status_protocol_s = macro_f_string_static_t_initialize_1(F_status_protocol_s, 0, F_status_protocol_s_length);
   const f_string_static_t f_status_protocol_not_s = macro_f_string_static_t_initialize_1(F_status_protocol_not_s, 0, F_status_protocol_not_s_length);
+  const f_string_static_t f_status_protocol_option_s = macro_f_string_static_t_initialize_1(F_status_protocol_option_s, 0, F_status_protocol_option_s_length);
+  const f_string_static_t f_status_protocol_option_not_s = macro_f_string_static_t_initialize_1(F_status_protocol_option_not_s, 0, F_status_protocol_option_not_s_length);
   const f_string_static_t f_status_range_s = macro_f_string_static_t_initialize_1(F_status_range_s, 0, F_status_range_s_length);
   const f_string_static_t f_status_range_not_s = macro_f_string_static_t_initialize_1(F_status_range_not_s, 0, F_status_range_not_s_length);
   const f_string_static_t f_status_read_s = macro_f_string_static_t_initialize_1(F_status_read_s, 0, F_status_read_s_length);
@@ -675,13 +682,25 @@ extern "C" {
   const f_string_static_t f_status_skip_not_s = macro_f_string_static_t_initialize_1(F_status_skip_not_s, 0, F_status_skip_not_s_length);
   const f_string_static_t f_status_socket_s = macro_f_string_static_t_initialize_1(F_status_socket_s, 0, F_status_socket_s_length);
   const f_string_static_t f_status_socket_block_s = macro_f_string_static_t_initialize_1(F_status_socket_block_s, 0, F_status_socket_block_s_length);
+  const f_string_static_t f_status_socket_block_not_s = macro_f_string_static_t_initialize_1(F_status_socket_block_not_s, 0, F_status_socket_block_not_s_length);
   const f_string_static_t f_status_socket_client_s = macro_f_string_static_t_initialize_1(F_status_socket_client_s, 0, F_status_socket_client_s_length);
+  const f_string_static_t f_status_socket_client_not_s = macro_f_string_static_t_initialize_1(F_status_socket_client_not_s, 0, F_status_socket_client_not_s_length);
   const f_string_static_t f_status_socket_not_s = macro_f_string_static_t_initialize_1(F_status_socket_not_s, 0, F_status_socket_not_s_length);
+  const f_string_static_t f_status_socket_option_s = macro_f_string_static_t_initialize_1(F_status_socket_option_s, 0, F_status_socket_option_s_length);
+  const f_string_static_t f_status_socket_option_not_s = macro_f_string_static_t_initialize_1(F_status_socket_option_not_s, 0, F_status_socket_option_not_s_length);
   const f_string_static_t f_status_socket_receive_s = macro_f_string_static_t_initialize_1(F_status_socket_receive_s, 0, F_status_socket_receive_s_length);
+  const f_string_static_t f_status_socket_receive_not_s = macro_f_string_static_t_initialize_1(F_status_socket_receive_not_s, 0, F_status_socket_receive_not_s_length);
   const f_string_static_t f_status_socket_send_s = macro_f_string_static_t_initialize_1(F_status_socket_send_s, 0, F_status_socket_send_s_length);
+  const f_string_static_t f_status_socket_send_not_s = macro_f_string_static_t_initialize_1(F_status_socket_send_not_s, 0, F_status_socket_send_not_s_length);
+  const f_string_static_t f_status_socket_stream_s = macro_f_string_static_t_initialize_1(F_status_socket_stream_s, 0, F_status_socket_stream_s_length);
+  const f_string_static_t f_status_socket_stream_not_s = macro_f_string_static_t_initialize_1(F_status_socket_stream_not_s, 0, F_status_socket_stream_not_s_length);
+  const f_string_static_t f_status_socket_support_s = macro_f_string_static_t_initialize_1(F_status_socket_support_s, 0, F_status_socket_support_s_length);
+  const f_string_static_t f_status_socket_support_not_s = macro_f_string_static_t_initialize_1(F_status_socket_support_not_s, 0, F_status_socket_support_not_s_length);
   const f_string_static_t f_status_socket_target_s = macro_f_string_static_t_initialize_1(F_status_socket_target_s, 0, F_status_socket_target_s_length);
+  const f_string_static_t f_status_socket_target_not_s = macro_f_string_static_t_initialize_1(F_status_socket_target_not_s, 0, F_status_socket_target_not_s_length);
   const f_string_static_t f_status_socket_time_s = macro_f_string_static_t_initialize_1(F_status_socket_time_s, 0, F_status_socket_time_s_length);
   const f_string_static_t f_status_socket_time_not_s = macro_f_string_static_t_initialize_1(F_status_socket_time_not_s, 0, F_status_socket_time_not_s_length);
+  const f_string_static_t f_status_socket_time_out_s = macro_f_string_static_t_initialize_1(F_status_socket_time_out_s, 0, F_status_socket_time_out_s_length);
   const f_string_static_t f_status_some_s = macro_f_string_static_t_initialize_1(F_status_some_s, 0, F_status_some_s_length);
   const f_string_static_t f_status_some_not_s = macro_f_string_static_t_initialize_1(F_status_some_not_s, 0, F_status_some_not_s_length);
   const f_string_static_t f_status_space_s = macro_f_string_static_t_initialize_1(F_status_space_s, 0, F_status_space_s_length);
@@ -1544,6 +1563,11 @@ extern "C" {
 
         break;
 
+      case F_buffer_scope_out:
+        *name = f_status_buffer_scope_out_s;
+
+        break;
+
       case F_buffer_sufficient:
         *name = f_status_buffer_sufficient_s;
 
@@ -3300,6 +3324,16 @@ extern "C" {
 
         break;
 
+      case F_network_down:
+        *name = f_status_network_down_s;
+
+        break;
+
+      case F_network_down_not:
+        *name = f_status_network_down_not_s;
+
+        break;
+
       case F_network_found:
         *name = f_status_network_found_s;
 
@@ -3335,8 +3369,8 @@ extern "C" {
 
         break;
 
-      case F_network_reach_client_not:
-        *name = f_status_network_reach_client_not_s;
+      case F_network_client_reach_not:
+        *name = f_status_network_client_reach_not_s;
 
         break;
 
@@ -3375,6 +3409,16 @@ extern "C" {
 
         break;
 
+      case F_network_up:
+        *name = f_status_network_up_s;
+
+        break;
+
+      case F_network_up_not:
+        *name = f_status_network_up_not_s;
+
+        break;
+
       case F_network_version_four:
         *name = f_status_network_version_four_s;
 
@@ -3785,6 +3829,16 @@ extern "C" {
 
         break;
 
+      case F_protocol_option:
+        *name = f_status_protocol_option_s;
+
+        break;
+
+      case F_protocol_option_not:
+        *name = f_status_protocol_option_not_s;
+
+        break;
+
       case F_range:
         *name = f_status_range_s;
 
@@ -4100,31 +4154,86 @@ extern "C" {
 
         break;
 
+      case F_socket_block_not:
+        *name = f_status_socket_block_not_s;
+
+        break;
+
       case F_socket_client:
         *name = f_status_socket_client_s;
 
         break;
 
+      case F_socket_client_not:
+        *name = f_status_socket_client_not_s;
+
+        break;
+
       case F_socket_not:
         *name = f_status_socket_not_s;
 
         break;
 
+      case F_socket_option:
+        *name = f_status_socket_option_s;
+
+        break;
+
+      case F_socket_option_not:
+        *name = f_status_socket_option_not_s;
+
+        break;
+
       case F_socket_receive:
         *name = f_status_socket_receive_s;
 
         break;
 
+      case F_socket_receive_not:
+        *name = f_status_socket_receive_not_s;
+
+        break;
+
       case F_socket_send:
         *name = f_status_socket_send_s;
 
         break;
 
+      case F_socket_send_not:
+        *name = f_status_socket_send_not_s;
+
+        break;
+
+      case F_socket_stream:
+        *name = f_status_socket_stream_s;
+
+        break;
+
+      case F_socket_stream_not:
+        *name = f_status_socket_stream_not_s;
+
+        break;
+
+      case F_socket_support:
+        *name = f_status_socket_support_s;
+
+        break;
+
+      case F_socket_support_not:
+        *name = f_status_socket_support_not_s;
+
+        break;
+
       case F_socket_target:
         *name = f_status_socket_target_s;
 
         break;
 
+      case F_socket_target_not:
+        *name = f_status_socket_target_not_s;
+
+        break;
+
       case F_socket_time:
         *name = f_status_socket_time_s;
 
@@ -4135,6 +4244,11 @@ extern "C" {
 
         break;
 
+      case F_socket_time_out:
+        *name = f_status_socket_time_out_s;
+
+        break;
+
       case F_some:
         *name = f_status_some_s;
 
index 7c0b899550298b1aec14a4d4bf8959af9d8c5b7c..686da6603b4554cd4075b65cb3042db5f8b5dc2d 100644 (file)
@@ -317,6 +317,7 @@ extern "C" {
   #define F_status_buffer_not_s               "F_buffer_not"
   #define F_status_buffer_overflow_s          "F_buffer_overflow"
   #define F_status_buffer_restrict_s          "F_buffer_restrict"
+  #define F_status_buffer_scope_out_s         "F_buffer_scope_out"
   #define F_status_buffer_sufficient_s        "F_buffer_sufficient"
   #define F_status_buffer_sufficient_not_s    "F_buffer_sufficient_not"
   #define F_status_buffer_too_large_s         "F_buffer_too_large"
@@ -668,6 +669,8 @@ extern "C" {
   #define F_status_network_client_not_s       "F_network_client_not"
   #define F_status_network_device_s           "F_network_device"
   #define F_status_network_device_not_s       "F_network_device_not"
+  #define F_status_network_down_s             "F_network_down"
+  #define F_status_network_down_not_s         "F_network_down_not"
   #define F_status_network_found_s            "F_network_found"
   #define F_status_network_found_not_s        "F_network_found_not"
   #define F_status_network_lost_s             "F_network_lost"
@@ -675,7 +678,7 @@ extern "C" {
   #define F_status_network_not_s              "F_network_not"
   #define F_status_network_reach_s            "F_network_reach"
   #define F_status_network_reach_client_s     "F_network_reach_client"
-  #define F_status_network_reach_client_not_s "F_network_reach_client_not"
+  #define F_status_network_client_reach_not_s "F_network_client_reach_not"
   #define F_status_network_reach_not_s        "F_network_reach_not"
   #define F_status_network_reach_server_s     "F_network_reach_server"
   #define F_status_network_reach_server_not_s "F_network_reach_server_not"
@@ -683,6 +686,8 @@ extern "C" {
   #define F_status_network_server_not_s       "F_network_server_not"
   #define F_status_network_time_s             "F_network_time"
   #define F_status_network_time_not_s         "F_network_time_not"
+  #define F_status_network_up_s               "F_network_up"
+  #define F_status_network_up_not_s           "F_network_up_not"
   #define F_status_network_version_four_s     "F_network_version_four"
   #define F_status_network_version_four_not_s "F_network_version_four_not"
   #define F_status_network_version_six_s      "F_network_version_six"
@@ -765,6 +770,8 @@ extern "C" {
   #define F_status_property_not_s             "F_property_not"
   #define F_status_protocol_s                 "F_protocol"
   #define F_status_protocol_not_s             "F_protocol_not"
+  #define F_status_protocol_option_s          "F_protocol_option"
+  #define F_status_protocol_option_not_s      "F_protocol_option_not"
   #define F_status_range_s                    "F_range"
   #define F_status_range_not_s                "F_range_not"
   #define F_status_read_s                     "F_read"
@@ -828,13 +835,25 @@ extern "C" {
   #define F_status_skip_not_s                 "F_skip_not"
   #define F_status_socket_s                   "F_socket"
   #define F_status_socket_block_s             "F_socket_block"
+  #define F_status_socket_block_not_s         "F_socket_block_not"
   #define F_status_socket_client_s            "F_socket_client"
+  #define F_status_socket_client_not_s        "F_socket_client_not"
   #define F_status_socket_not_s               "F_socket_not"
+  #define F_status_socket_option_s            "F_socket_option"
+  #define F_status_socket_option_not_s        "F_socket_option_not"
   #define F_status_socket_receive_s           "F_socket_receive"
+  #define F_status_socket_receive_not_s       "F_socket_receive_not"
   #define F_status_socket_send_s              "F_socket_send"
+  #define F_status_socket_send_not_s          "F_socket_send_not"
+  #define F_status_socket_stream_s            "F_socket_stream"
+  #define F_status_socket_stream_not_s        "F_socket_stream_not"
+  #define F_status_socket_support_s           "F_socket_support"
+  #define F_status_socket_support_not_s       "F_socket_support_not"
   #define F_status_socket_target_s            "F_socket_target"
+  #define F_status_socket_target_not_s        "F_socket_target_not"
   #define F_status_socket_time_s              "F_socket_time"
   #define F_status_socket_time_not_s          "F_socket_time_not"
+  #define F_status_socket_time_out_s          "F_socket_time_out"
   #define F_status_some_s                     "F_some"
   #define F_status_some_not_s                 "F_some_not"
   #define F_status_space_s                    "F_space"
@@ -1009,6 +1028,7 @@ extern "C" {
   #define F_status_buffer_not_s_length               12
   #define F_status_buffer_overflow_s_length          17
   #define F_status_buffer_restrict_s_length          17
+  #define F_status_buffer_scope_out_s_length         18
   #define F_status_buffer_sufficient_s_length        19
   #define F_status_buffer_sufficient_not_s_length    23
   #define F_status_buffer_too_large_s_length         18
@@ -1360,6 +1380,8 @@ extern "C" {
   #define F_status_network_client_not_s_length       20
   #define F_status_network_device_s_length           16
   #define F_status_network_device_not_s_length       20
+  #define F_status_network_down_s_length             14
+  #define F_status_network_down_not_s_length         18
   #define F_status_network_found_s_length            15
   #define F_status_network_found_not_s_length        19
   #define F_status_network_lost_s_length             14
@@ -1367,7 +1389,7 @@ extern "C" {
   #define F_status_network_not_s_length              13
   #define F_status_network_reach_s_length            15
   #define F_status_network_reach_client_s_length     22
-  #define F_status_network_reach_client_not_s_length 26
+  #define F_status_network_client_reach_not_s_length 26
   #define F_status_network_reach_not_s_length        19
   #define F_status_network_reach_server_s_length     22
   #define F_status_network_reach_server_not_s_length 26
@@ -1375,6 +1397,8 @@ extern "C" {
   #define F_status_network_server_not_s_length       20
   #define F_status_network_time_s_length             14
   #define F_status_network_time_not_s_length         18
+  #define F_status_network_up_s_length               12
+  #define F_status_network_up_not_s_length           16
   #define F_status_network_version_four_s_length     22
   #define F_status_network_version_four_not_s_length 26
   #define F_status_network_version_six_s_length      21
@@ -1457,6 +1481,8 @@ extern "C" {
   #define F_status_property_not_s_length             14
   #define F_status_protocol_s_length                 10
   #define F_status_protocol_not_s_length             14
+  #define F_status_protocol_option_s_length          17
+  #define F_status_protocol_option_not_s_length      21
   #define F_status_range_s_length                    7
   #define F_status_range_not_s_length                11
   #define F_status_read_s_length                     6
@@ -1520,13 +1546,25 @@ extern "C" {
   #define F_status_skip_not_s_length                 10
   #define F_status_socket_s_length                   8
   #define F_status_socket_block_s_length             14
+  #define F_status_socket_block_not_s_length         18
   #define F_status_socket_client_s_length            15
+  #define F_status_socket_client_not_s_length        19
   #define F_status_socket_not_s_length               12
+  #define F_status_socket_option_s_length            15
+  #define F_status_socket_option_not_s_length        19
   #define F_status_socket_receive_s_length           16
+  #define F_status_socket_receive_not_s_length       20
   #define F_status_socket_send_s_length              13
+  #define F_status_socket_send_not_s_length          17
+  #define F_status_socket_stream_s_length            15
+  #define F_status_socket_stream_not_s_length        19
+  #define F_status_socket_support_s_length           16
+  #define F_status_socket_support_not_s_length       20
   #define F_status_socket_target_s_length            15
+  #define F_status_socket_target_not_s_length        19
   #define F_status_socket_time_s_length              13
   #define F_status_socket_time_not_s_length          17
+  #define F_status_socket_time_out_s_length          17
   #define F_status_some_s_length                     6
   #define F_status_some_not_s_length                 10
   #define F_status_space_s_length                    7
@@ -1701,6 +1739,7 @@ extern "C" {
   extern const f_string_static_t f_status_buffer_not_s;
   extern const f_string_static_t f_status_buffer_overflow_s;
   extern const f_string_static_t f_status_buffer_restrict_s;
+  extern const f_string_static_t f_status_buffer_scope_out_s;
   extern const f_string_static_t f_status_buffer_sufficient_s;
   extern const f_string_static_t f_status_buffer_sufficient_not_s;
   extern const f_string_static_t f_status_buffer_too_large_s;
@@ -2054,6 +2093,8 @@ extern "C" {
   extern const f_string_static_t f_status_network_client_not_s;
   extern const f_string_static_t f_status_network_device_s;
   extern const f_string_static_t f_status_network_device_not_s;
+  extern const f_string_static_t f_status_network_down_s;
+  extern const f_string_static_t f_status_network_down_not_s;
   extern const f_string_static_t f_status_network_found_s;
   extern const f_string_static_t f_status_network_found_not_s;
   extern const f_string_static_t f_status_network_lost_s;
@@ -2061,7 +2102,7 @@ extern "C" {
   extern const f_string_static_t f_status_network_not_s;
   extern const f_string_static_t f_status_network_reach_s;
   extern const f_string_static_t f_status_network_reach_client_s;
-  extern const f_string_static_t f_status_network_reach_client_not_s;
+  extern const f_string_static_t f_status_network_client_reach_not_s;
   extern const f_string_static_t f_status_network_reach_not_s;
   extern const f_string_static_t f_status_network_reach_server_s;
   extern const f_string_static_t f_status_network_reach_server_not_s;
@@ -2069,6 +2110,8 @@ extern "C" {
   extern const f_string_static_t f_status_network_server_not_s;
   extern const f_string_static_t f_status_network_time_s;
   extern const f_string_static_t f_status_network_time_not_s;
+  extern const f_string_static_t f_status_network_up_s;
+  extern const f_string_static_t f_status_network_up_not_s;
   extern const f_string_static_t f_status_network_version_four_s;
   extern const f_string_static_t f_status_network_version_four_not_s;
   extern const f_string_static_t f_status_network_version_six_s;
@@ -2151,6 +2194,8 @@ extern "C" {
   extern const f_string_static_t f_status_property_not_s;
   extern const f_string_static_t f_status_protocol_s;
   extern const f_string_static_t f_status_protocol_not_s;
+  extern const f_string_static_t f_status_protocol_option_s;
+  extern const f_string_static_t f_status_protocol_option_not_s;
   extern const f_string_static_t f_status_range_s;
   extern const f_string_static_t f_status_range_not_s;
   extern const f_string_static_t f_status_read_s;
@@ -2214,13 +2259,25 @@ extern "C" {
   extern const f_string_static_t f_status_skip_not_s;
   extern const f_string_static_t f_status_socket_s;
   extern const f_string_static_t f_status_socket_block_s;
+  extern const f_string_static_t f_status_socket_block_not_s;
   extern const f_string_static_t f_status_socket_client_s;
+  extern const f_string_static_t f_status_socket_client_not_s;
   extern const f_string_static_t f_status_socket_not_s;
+  extern const f_string_static_t f_status_socket_option_s;
+  extern const f_string_static_t f_status_socket_option_not_s;
   extern const f_string_static_t f_status_socket_receive_s;
+  extern const f_string_static_t f_status_socket_receive_not_s;
   extern const f_string_static_t f_status_socket_send_s;
+  extern const f_string_static_t f_status_socket_send_not_s;
+  extern const f_string_static_t f_status_socket_stream_s;
+  extern const f_string_static_t f_status_socket_stream_not_s;
+  extern const f_string_static_t f_status_socket_support_s;
+  extern const f_string_static_t f_status_socket_support_not_s;
   extern const f_string_static_t f_status_socket_target_s;
+  extern const f_string_static_t f_status_socket_target_not_s;
   extern const f_string_static_t f_status_socket_time_s;
   extern const f_string_static_t f_status_socket_time_not_s;
+  extern const f_string_static_t f_status_socket_time_out_s;
   extern const f_string_static_t f_status_some_s;
   extern const f_string_static_t f_status_some_not_s;
   extern const f_string_static_t f_status_space_s;
index 34dc4734f6f9e73c99e650380b8bfd3871faf9fc..1df112aeee7f7b2031c5a5f1b4132d91c94dae21 100644 (file)
@@ -183,6 +183,7 @@ void test__f_status_string_to__works(void **state) {
     F_buffer_not,
     F_buffer_overflow,
     F_buffer_restrict,
+    F_buffer_scope_out,
     F_buffer_sufficient,
     F_buffer_sufficient_not,
     F_buffer_too_large,
@@ -534,6 +535,8 @@ void test__f_status_string_to__works(void **state) {
     F_network_client_not,
     F_network_device,
     F_network_device_not,
+    F_network_down,
+    F_network_down_not,
     F_network_found,
     F_network_found_not,
     F_network_lost,
@@ -541,7 +544,7 @@ void test__f_status_string_to__works(void **state) {
     F_network_not,
     F_network_reach,
     F_network_reach_client,
-    F_network_reach_client_not,
+    F_network_client_reach_not,
     F_network_reach_not,
     F_network_reach_server,
     F_network_reach_server_not,
@@ -549,6 +552,8 @@ void test__f_status_string_to__works(void **state) {
     F_network_server_not,
     F_network_time,
     F_network_time_not,
+    F_network_up,
+    F_network_up_not,
     F_network_version_four,
     F_network_version_four_not,
     F_network_version_six,
@@ -631,6 +636,8 @@ void test__f_status_string_to__works(void **state) {
     F_property_not,
     F_protocol,
     F_protocol_not,
+    F_protocol_option,
+    F_protocol_option_not,
     F_range,
     F_range_not,
     F_read,
@@ -694,13 +701,25 @@ void test__f_status_string_to__works(void **state) {
     F_skip_not,
     F_socket,
     F_socket_block,
+    F_socket_block_not,
     F_socket_client,
+    F_socket_client_not,
     F_socket_not,
+    F_socket_option,
+    F_socket_option_not,
     F_socket_receive,
+    F_socket_receive_not,
     F_socket_send,
+    F_socket_send_not,
+    F_socket_stream,
+    F_socket_stream_not,
+    F_socket_support,
+    F_socket_support_not,
     F_socket_target,
+    F_socket_target_not,
     F_socket_time,
     F_socket_time_not,
+    F_socket_time_out,
     F_some,
     F_some_not,
     F_space,
@@ -944,6 +963,7 @@ void test__f_status_string_to__works(void **state) {
     f_status_buffer_not_s,
     f_status_buffer_overflow_s,
     f_status_buffer_restrict_s,
+    f_status_buffer_scope_out_s,
     f_status_buffer_sufficient_s,
     f_status_buffer_sufficient_not_s,
     f_status_buffer_too_large_s,
@@ -1295,6 +1315,8 @@ void test__f_status_string_to__works(void **state) {
     f_status_network_client_not_s,
     f_status_network_device_s,
     f_status_network_device_not_s,
+    f_status_network_down_s,
+    f_status_network_down_not_s,
     f_status_network_found_s,
     f_status_network_found_not_s,
     f_status_network_lost_s,
@@ -1302,7 +1324,7 @@ void test__f_status_string_to__works(void **state) {
     f_status_network_not_s,
     f_status_network_reach_s,
     f_status_network_reach_client_s,
-    f_status_network_reach_client_not_s,
+    f_status_network_client_reach_not_s,
     f_status_network_reach_not_s,
     f_status_network_reach_server_s,
     f_status_network_reach_server_not_s,
@@ -1310,6 +1332,8 @@ void test__f_status_string_to__works(void **state) {
     f_status_network_server_not_s,
     f_status_network_time_s,
     f_status_network_time_not_s,
+    f_status_network_up_s,
+    f_status_network_up_not_s,
     f_status_network_version_four_s,
     f_status_network_version_four_not_s,
     f_status_network_version_six_s,
@@ -1392,6 +1416,8 @@ void test__f_status_string_to__works(void **state) {
     f_status_property_not_s,
     f_status_protocol_s,
     f_status_protocol_not_s,
+    f_status_protocol_option_s,
+    f_status_protocol_option_not_s,
     f_status_range_s,
     f_status_range_not_s,
     f_status_read_s,
@@ -1455,13 +1481,25 @@ void test__f_status_string_to__works(void **state) {
     f_status_skip_not_s,
     f_status_socket_s,
     f_status_socket_block_s,
+    f_status_socket_block_not_s,
     f_status_socket_client_s,
+    f_status_socket_client_not_s,
     f_status_socket_not_s,
+    f_status_socket_option_s,
+    f_status_socket_option_not_s,
     f_status_socket_receive_s,
+    f_status_socket_receive_not_s,
     f_status_socket_send_s,
+    f_status_socket_send_not_s,
+    f_status_socket_stream_s,
+    f_status_socket_stream_not_s,
+    f_status_socket_support_s,
+    f_status_socket_support_not_s,
     f_status_socket_target_s,
+    f_status_socket_target_not_s,
     f_status_socket_time_s,
     f_status_socket_time_not_s,
+    f_status_socket_time_out_s,
     f_status_some_s,
     f_status_some_not_s,
     f_status_space_s,
@@ -1551,16 +1589,23 @@ void test__f_status_string_to__works(void **state) {
     f_status_status_code_last_s,
   };
 
-  for (uint16_t i = 0; i < 758; ++i) {
+  {
+    uint16_t i = 0;
 
-    f_string_static_t result = f_string_static_t_initialize;
+    for (; i < 777; ++i) {
+
+      f_string_static_t result = f_string_static_t_initialize;
 
-    const f_status_t status = f_status_string_to(statuss[i], &result);
+      const f_status_t status = f_status_string_to(statuss[i], &result);
 
-    assert_int_equal(status, F_okay);
-    assert_int_equal(result.used, status_strings[i].used);
-    assert_string_equal(result.string, status_strings[i].string);
-  } // for
+      assert_int_equal(status, F_okay);
+      assert_int_equal(result.used, status_strings[i].used);
+      assert_string_equal(result.string, status_strings[i].string);
+    } // for
+
+    // Ensure the last index is always the last code.
+    assert_string_equal(status_strings[--i].string, f_status_status_code_last_s.string);
+  }
 }
 
 #ifdef __cplusplus
index da6d2baaa0ccf8dd93dc827cc47a809b0c47060a..6cda00bbbe5abb9f1e942f54b201fd7fba7c00d0 100644 (file)
@@ -957,6 +957,12 @@ extern "C" {
       return F_okay;
     }
 
+    if (f_compare_dynamic(name, f_status_buffer_scope_out_s) == F_equal_to) {
+      *code = F_buffer_scope_out;
+
+      return F_okay;
+    }
+
     if (f_compare_dynamic(name, f_status_buffer_sufficient_s) == F_equal_to) {
       *code = F_buffer_sufficient;
 
@@ -3060,6 +3066,18 @@ extern "C" {
       return F_okay;
     }
 
+    if (f_compare_dynamic(name, f_status_network_down_s) == F_equal_to) {
+      *code = F_network_down;
+
+      return F_okay;
+    }
+
+    if (f_compare_dynamic(name, f_status_network_down_not_s) == F_equal_to) {
+      *code = F_network_down_not;
+
+      return F_okay;
+    }
+
     if (f_compare_dynamic(name, f_status_network_found_s) == F_equal_to) {
       *code = F_network_found;
 
@@ -3102,8 +3120,8 @@ extern "C" {
       return F_okay;
     }
 
-    if (f_compare_dynamic(name, f_status_network_reach_client_not_s) == F_equal_to) {
-      *code = F_network_reach_client_not;
+    if (f_compare_dynamic(name, f_status_network_client_reach_not_s) == F_equal_to) {
+      *code = F_network_client_reach_not;
 
       return F_okay;
     }
@@ -3150,6 +3168,18 @@ extern "C" {
       return F_okay;
     }
 
+    if (f_compare_dynamic(name, f_status_network_up_s) == F_equal_to) {
+      *code = F_network_up;
+
+      return F_okay;
+    }
+
+    if (f_compare_dynamic(name, f_status_network_up_not_s) == F_equal_to) {
+      *code = F_network_up_not;
+
+      return F_okay;
+    }
+
     if (f_compare_dynamic(name, f_status_network_version_four_s) == F_equal_to) {
       *code = F_network_version_four;
 
@@ -3642,6 +3672,18 @@ extern "C" {
       return F_okay;
     }
 
+    if (f_compare_dynamic(name, f_status_protocol_option_s) == F_equal_to) {
+      *code = F_protocol_option;
+
+      return F_okay;
+    }
+
+    if (f_compare_dynamic(name, f_status_protocol_option_not_s) == F_equal_to) {
+      *code = F_protocol_option_not;
+
+      return F_okay;
+    }
+
     if (f_compare_dynamic(name, f_status_range_s) == F_equal_to) {
       *code = F_range;
 
@@ -4056,36 +4098,102 @@ extern "C" {
       return F_okay;
     }
 
+    if (f_compare_dynamic(name, f_status_socket_block_not_s) == F_equal_to) {
+      *code = F_socket_block_not;
+
+      return F_okay;
+    }
+
     if (f_compare_dynamic(name, f_status_socket_client_s) == F_equal_to) {
       *code = F_socket_client;
 
       return F_okay;
     }
 
+    if (f_compare_dynamic(name, f_status_socket_client_not_s) == F_equal_to) {
+      *code = F_socket_client_not;
+
+      return F_okay;
+    }
+
     if (f_compare_dynamic(name, f_status_socket_not_s) == F_equal_to) {
       *code = F_socket_not;
 
       return F_okay;
     }
 
+    if (f_compare_dynamic(name, f_status_socket_option_s) == F_equal_to) {
+      *code = F_socket_option;
+
+      return F_okay;
+    }
+
+    if (f_compare_dynamic(name, f_status_socket_option_not_s) == F_equal_to) {
+      *code = F_socket_option_not;
+
+      return F_okay;
+    }
+
     if (f_compare_dynamic(name, f_status_socket_receive_s) == F_equal_to) {
       *code = F_socket_receive;
 
       return F_okay;
     }
 
+    if (f_compare_dynamic(name, f_status_socket_receive_not_s) == F_equal_to) {
+      *code = F_socket_receive_not;
+
+      return F_okay;
+    }
+
     if (f_compare_dynamic(name, f_status_socket_send_s) == F_equal_to) {
       *code = F_socket_send;
 
       return F_okay;
     }
 
+    if (f_compare_dynamic(name, f_status_socket_send_not_s) == F_equal_to) {
+      *code = F_socket_send_not;
+
+      return F_okay;
+    }
+
+    if (f_compare_dynamic(name, f_status_socket_stream_s) == F_equal_to) {
+      *code = F_socket_stream;
+
+      return F_okay;
+    }
+
+    if (f_compare_dynamic(name, f_status_socket_stream_not_s) == F_equal_to) {
+      *code = F_socket_stream_not;
+
+      return F_okay;
+    }
+
+    if (f_compare_dynamic(name, f_status_socket_support_s) == F_equal_to) {
+      *code = F_socket_support;
+
+      return F_okay;
+    }
+
+    if (f_compare_dynamic(name, f_status_socket_support_not_s) == F_equal_to) {
+      *code = F_socket_support_not;
+
+      return F_okay;
+    }
+
     if (f_compare_dynamic(name, f_status_socket_target_s) == F_equal_to) {
       *code = F_socket_target;
 
       return F_okay;
     }
 
+    if (f_compare_dynamic(name, f_status_socket_target_not_s) == F_equal_to) {
+      *code = F_socket_target_not;
+
+      return F_okay;
+    }
+
     if (f_compare_dynamic(name, f_status_socket_time_s) == F_equal_to) {
       *code = F_socket_time;
 
@@ -4098,6 +4206,12 @@ extern "C" {
       return F_okay;
     }
 
+    if (f_compare_dynamic(name, f_status_socket_time_out_s) == F_equal_to) {
+      *code = F_socket_time_out;
+
+      return F_okay;
+    }
+
     if (f_compare_dynamic(name, f_status_start_s) == F_equal_to) {
       *code = F_start;
 
index 14473b10f092b43cf398eff77797017c11f3e9a6..5db6524a52f1e8d4866832f0856e590c819e8dea 100644 (file)
@@ -199,6 +199,7 @@ void test__fl_status_string_from__works(void **state) {
     F_buffer_not,
     F_buffer_overflow,
     F_buffer_restrict,
+    F_buffer_scope_out,
     F_buffer_sufficient,
     F_buffer_sufficient_not,
     F_buffer_too_large,
@@ -550,6 +551,8 @@ void test__fl_status_string_from__works(void **state) {
     F_network_client_not,
     F_network_device,
     F_network_device_not,
+    F_network_down,
+    F_network_down_not,
     F_network_found,
     F_network_found_not,
     F_network_lost,
@@ -557,7 +560,7 @@ void test__fl_status_string_from__works(void **state) {
     F_network_not,
     F_network_reach,
     F_network_reach_client,
-    F_network_reach_client_not,
+    F_network_client_reach_not,
     F_network_reach_not,
     F_network_reach_server,
     F_network_reach_server_not,
@@ -565,6 +568,8 @@ void test__fl_status_string_from__works(void **state) {
     F_network_server_not,
     F_network_time,
     F_network_time_not,
+    F_network_up,
+    F_network_up_not,
     F_network_version_four,
     F_network_version_four_not,
     F_network_version_six,
@@ -647,6 +652,8 @@ void test__fl_status_string_from__works(void **state) {
     F_property_not,
     F_protocol,
     F_protocol_not,
+    F_protocol_option,
+    F_protocol_option_not,
     F_range,
     F_range_not,
     F_read,
@@ -710,13 +717,25 @@ void test__fl_status_string_from__works(void **state) {
     F_skip_not,
     F_socket,
     F_socket_block,
+    F_socket_block_not,
     F_socket_client,
+    F_socket_client_not,
     F_socket_not,
+    F_socket_option,
+    F_socket_option_not,
     F_socket_receive,
+    F_socket_receive_not,
     F_socket_send,
+    F_socket_send_not,
+    F_socket_stream,
+    F_socket_stream_not,
+    F_socket_support,
+    F_socket_support_not,
     F_socket_target,
+    F_socket_target_not,
     F_socket_time,
     F_socket_time_not,
+    F_socket_time_out,
     F_some,
     F_some_not,
     F_space,
@@ -960,6 +979,7 @@ void test__fl_status_string_from__works(void **state) {
     f_status_buffer_not_s,
     f_status_buffer_overflow_s,
     f_status_buffer_restrict_s,
+    f_status_buffer_scope_out_s,
     f_status_buffer_sufficient_s,
     f_status_buffer_sufficient_not_s,
     f_status_buffer_too_large_s,
@@ -1311,6 +1331,8 @@ void test__fl_status_string_from__works(void **state) {
     f_status_network_client_not_s,
     f_status_network_device_s,
     f_status_network_device_not_s,
+    f_status_network_down_s,
+    f_status_network_down_not_s,
     f_status_network_found_s,
     f_status_network_found_not_s,
     f_status_network_lost_s,
@@ -1318,7 +1340,7 @@ void test__fl_status_string_from__works(void **state) {
     f_status_network_not_s,
     f_status_network_reach_s,
     f_status_network_reach_client_s,
-    f_status_network_reach_client_not_s,
+    f_status_network_client_reach_not_s,
     f_status_network_reach_not_s,
     f_status_network_reach_server_s,
     f_status_network_reach_server_not_s,
@@ -1326,6 +1348,8 @@ void test__fl_status_string_from__works(void **state) {
     f_status_network_server_not_s,
     f_status_network_time_s,
     f_status_network_time_not_s,
+    f_status_network_up_s,
+    f_status_network_up_not_s,
     f_status_network_version_four_s,
     f_status_network_version_four_not_s,
     f_status_network_version_six_s,
@@ -1408,6 +1432,8 @@ void test__fl_status_string_from__works(void **state) {
     f_status_property_not_s,
     f_status_protocol_s,
     f_status_protocol_not_s,
+    f_status_protocol_option_s,
+    f_status_protocol_option_not_s,
     f_status_range_s,
     f_status_range_not_s,
     f_status_read_s,
@@ -1471,13 +1497,25 @@ void test__fl_status_string_from__works(void **state) {
     f_status_skip_not_s,
     f_status_socket_s,
     f_status_socket_block_s,
+    f_status_socket_block_not_s,
     f_status_socket_client_s,
+    f_status_socket_client_not_s,
     f_status_socket_not_s,
+    f_status_socket_option_s,
+    f_status_socket_option_not_s,
     f_status_socket_receive_s,
+    f_status_socket_receive_not_s,
     f_status_socket_send_s,
+    f_status_socket_send_not_s,
+    f_status_socket_stream_s,
+    f_status_socket_stream_not_s,
+    f_status_socket_support_s,
+    f_status_socket_support_not_s,
     f_status_socket_target_s,
+    f_status_socket_target_not_s,
     f_status_socket_time_s,
     f_status_socket_time_not_s,
+    f_status_socket_time_out_s,
     f_status_some_s,
     f_status_some_not_s,
     f_status_space_s,
@@ -1567,15 +1605,22 @@ void test__fl_status_string_from__works(void **state) {
     f_status_status_code_last_s,
   };
 
-  for (uint16_t i = 0; i < 758; ++i) {
+  {
+    uint16_t i = 0;
 
-    f_status_t result = F_okay;
+    for (; i < 777; ++i) {
 
-    const f_status_t status = fl_status_string_from(status_strings[i], &result);
+      f_status_t result = F_okay;
 
-    assert_int_equal(status, F_okay);
-    assert_int_equal(result, statuss[i]);
-  } // for
+      const f_status_t status = fl_status_string_from(status_strings[i], &result);
+
+      assert_int_equal(status, F_okay);
+      assert_int_equal(result, statuss[i]);
+    } // for
+
+    // Ensure the last index is always the last code.
+    assert_int_equal(statuss[--i], F_status_code_last);
+  }
 }
 
 #ifdef __cplusplus
index c85fd2c003fd3ed7b2b35e8c060379cbc4896d73..bf4476e2fbd247900c39a8db56b5c9fd291d1f51 100644 (file)
@@ -115,6 +115,12 @@ extern "C" {
     "%[%QSocket is blocked",
     "%[%QBuffer is restricted",
     "%[%QBuffer is insufficient",
+    "%[%QInvalid buffer",
+    "%[%QInvalid address",
+    "%[%QBuffer is out of scope",
+    "%[%QUnknown protocol option",
+    "%[%QUnknown socket option",
+    "%[%QSocket time out",
   };
 #endif // _di_fll_error_s_a_
 
index d96d5dbf53af6fd3b6302b8a953f8992b8af7323..7e09e5be3c4e4e3592996cece924858c69927c77 100644 (file)
@@ -147,6 +147,13 @@ extern "C" {
     fll_error_s_107_buffer_too_small_e,
     fll_error_s_108_buffer_restrict_e,
     fll_error_s_109_buffer_insufficient_e,
+    fll_error_s_110_invalid_buffer_e,
+    fll_error_s_111_invalid_address_e,
+    fll_error_s_112_buffer_out_of_scope_e,
+    fll_error_s_113_unknown_protocol_option_e,
+    fll_error_s_114_unknown_socket_option_e,
+    fll_error_s_115_socket_type_unsupported_e,
+    fll_error_s_116_socket_time_out_e,
   }; // enum
 #endif // _di_fll_error_s_e_
 
index 501eb136ab55098c913205d683864e82bad6d6dd..315aa1081052beec3f69c9b33cc9fbd4556a7e1f 100644 (file)
@@ -74,6 +74,10 @@ extern "C" {
       return private_fll_error_print_simple(print, debug, macro_fll_error_s(000_access_denied));
     }
 
+    if (status == F_address_not) {
+      return private_fll_error_print_simple(print, debug, macro_fll_error_s(111_invalid_address));
+    }
+
     if (status == F_array_too_large) {
       return private_fll_error_print_simple(print, debug, macro_fll_error_s(001_max_arr_length));
     }
@@ -82,10 +86,18 @@ extern "C" {
       return private_fll_error_print_simple(print, debug, macro_fll_error_s(078_available_not_available));
     }
 
+    if (status == F_buffer_not) {
+      return private_fll_error_print_simple(print, debug, macro_fll_error_s(110_invalid_buffer));
+    }
+
     if (status == F_buffer_restrict) {
       return private_fll_error_print_simple(print, debug, macro_fll_error_s(108_buffer_restrict));
     }
 
+    if (status == F_buffer_scope_out) {
+      return private_fll_error_print_simple(print, debug, macro_fll_error_s(112_buffer_out_of_scope));
+    }
+
     if (status == F_buffer_sufficient_not) {
       return private_fll_error_print_simple(print, debug, macro_fll_error_s(109_buffer_insufficient));
     }
@@ -174,7 +186,7 @@ extern "C" {
       return private_fll_error_print_simple(print, debug, macro_fll_error_s(100_network_down));
     }
 
-    if (status == F_network_reach_client_not) {
+    if (status == F_network_client_reach_not) {
       return private_fll_error_print_simple(print, debug, macro_fll_error_s(098_client_unreachable));
     }
 
@@ -202,6 +214,10 @@ extern "C" {
       return private_fll_error_print_simple(print, debug, macro_fll_error_s(086_unknown_protocol));
     }
 
+    if (status == F_protocol_option_not) {
+      return private_fll_error_print_simple(print, debug, macro_fll_error_s(113_unknown_protocol_option));
+    }
+
     if (status == F_space_not) {
       return private_fll_error_print_simple(print, debug, macro_fll_error_s(093_out_of_space));
     }
@@ -214,10 +230,22 @@ extern "C" {
       return private_fll_error_print_simple(print, debug, macro_fll_error_s(087_invalid_socket));
     }
 
-    if (status == F_stream_not) {
+    if (status == F_socket_option_not) {
+      return private_fll_error_print_simple(print, debug, macro_fll_error_s(114_unknown_socket_option));
+    }
+
+    if (status == F_socket_stream_not) {
       return private_fll_error_print_simple(print, debug, macro_fll_error_s(103_invalid_stream));
     }
 
+    if (status == F_socket_support_not) {
+      return private_fll_error_print_simple(print, debug, macro_fll_error_s(115_socket_type_unsupported));
+    }
+
+    if (status == F_socket_time_out) {
+      return private_fll_error_print_simple(print, debug, macro_fll_error_s(116_socket_time_out));
+    }
+
     if (status == F_string_too_large) {
       return private_fll_error_print_simple(print, debug, macro_fll_error_s(008_max_str_length));
     }