Skip to content

Commit

Permalink
Merge pull request #14752 from tymoteuszblochmobica/sockets
Browse files Browse the repository at this point in the history
 LWIP Broadcast  socket option added
  • Loading branch information
0xc0170 committed Jun 15, 2021
2 parents fd7e33b + 580fd2c commit 3cf5f8e
Show file tree
Hide file tree
Showing 2 changed files with 17 additions and 0 deletions.
16 changes: 16 additions & 0 deletions connectivity/lwipstack/source/LWIPStack.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -567,6 +567,22 @@ nsapi_error_t LWIP::setsockopt(nsapi_socket_t handle, int level, int optname, co
}
return 0;

case NSAPI_BROADCAST:
if (NETCONNTYPE_GROUP(s->conn->type) != NETCONN_UDP) {
return NSAPI_ERROR_UNSUPPORTED;
}

if (optlen != sizeof(int)) {
return NSAPI_ERROR_UNSUPPORTED;
}

if (*(const int *)optval) {
ip_set_option(s->conn->pcb.ip, SOF_BROADCAST);
} else {
ip_reset_option(s->conn->pcb.ip, SOF_BROADCAST);
}
return 0;

case NSAPI_ADD_MEMBERSHIP:
case NSAPI_DROP_MEMBERSHIP: {
if (optlen != sizeof(nsapi_ip_mreq_t)) {
Expand Down
1 change: 1 addition & 0 deletions connectivity/netsocket/include/netsocket/nsapi_types.h
Original file line number Diff line number Diff line change
Expand Up @@ -318,6 +318,7 @@ typedef enum nsapi_socket_option {
NSAPI_LATENCY, /*!< Read estimated latency to destination */
NSAPI_STAGGER, /*!< Read estimated stagger value to destination */
NSAPI_IPTOS, /*!< Set IP type of service to set specific precedence */
NSAPI_BROADCAST /*!< Set broadcast flag for UDP socket */
} nsapi_socket_option_t;

typedef enum nsapi_tlssocket_level {
Expand Down

0 comments on commit 3cf5f8e

Please sign in to comment.