usrsock: Make the field of usrsock_request native alignment

There is a risk that interfaces such as psock_ioctl/psock_setsockopt
will cause paramete to be not four-byte aligned after calculating the
offset, so align the length of the structure with parameters by four
bytes.

Signed-off-by: zhanghongyu <zhanghongyu@xiaomi.com>
This commit is contained in:
zhanghongyu
2023-10-19 20:53:36 +08:00
committed by Xiang Xiao
parent 0f1a49bba5
commit 3ad28c28aa
2 changed files with 4 additions and 6 deletions
-1
View File
@@ -94,7 +94,6 @@ static int usrsock_rpmsg_send_dns_request(FAR void *arg,
dns->head.reqid = USRSOCK_RPMSG_DNS_REQUEST;
dns->head.xid = 0;
dns->head.reserved = 0;
dns->addrlen = addrlen;
memcpy(dns + 1, addr, addrlen);
+4 -5
View File
@@ -100,8 +100,7 @@ enum usrsock_message_types_e
begin_packed_struct struct usrsock_request_common_s
{
uint32_t xid;
int8_t reqid;
int8_t reserved;
uint32_t reqid;
} end_packed_struct;
begin_packed_struct struct usrsock_request_socket_s
@@ -157,9 +156,9 @@ begin_packed_struct struct usrsock_request_sendto_s
struct usrsock_request_common_s head;
int16_t usockid;
uint16_t addrlen;
int32_t flags;
uint32_t buflen;
uint16_t addrlen;
} end_packed_struct;
begin_packed_struct struct usrsock_request_recvfrom_s
@@ -167,9 +166,9 @@ begin_packed_struct struct usrsock_request_recvfrom_s
struct usrsock_request_common_s head;
int16_t usockid;
uint16_t max_addrlen;
int32_t flags;
uint32_t max_buflen;
uint16_t max_addrlen;
} end_packed_struct;
begin_packed_struct struct usrsock_request_setsockopt_s
@@ -213,8 +212,8 @@ begin_packed_struct struct usrsock_request_ioctl_s
struct usrsock_request_common_s head;
int16_t usockid;
int32_t cmd;
uint16_t arglen;
int32_t cmd;
} end_packed_struct;
begin_packed_struct struct usrsock_request_shutdown_s