Add size_t ssize_t and socklen_t
This commit is contained in:
@@ -147,7 +147,7 @@ int socket(int domain, int type, int protocol) {
|
||||
return (int32_t)rtn;
|
||||
}
|
||||
|
||||
int setsockopt(int sockfd, int level, int optname, const void* optval, uint64_t optlen) {
|
||||
int setsockopt(int sockfd, int level, int optname, const void* optval, socklen_t optlen) {
|
||||
long int rtn;
|
||||
asm volatile (
|
||||
// Assembly Instructions
|
||||
@@ -162,14 +162,14 @@ int setsockopt(int sockfd, int level, int optname, const void* optval, uint64_t
|
||||
// Output operands
|
||||
: "=r" (rtn)
|
||||
// Input operand
|
||||
: "r" ((int64_t)sockfd), "r"((int64_t)level), "r"((int64_t)optname), "r"(optval), "r"(optlen)
|
||||
: "r" ((int64_t)sockfd), "r"((int64_t)level), "r"((int64_t)optname), "r"(optval), "r"((uint64_t)optlen)
|
||||
// Clobbered registers
|
||||
: "x0", "x1", "x2", "x3", "x4", "x8"
|
||||
);
|
||||
return (int32_t)rtn;
|
||||
}
|
||||
|
||||
int bind(int sockfd, const void* sockaddr, uint64_t addrlen) {
|
||||
int bind(int sockfd, const void* sockaddr, socklen_t addrlen) {
|
||||
long int rtn;
|
||||
asm volatile (
|
||||
// Assembly Instructions
|
||||
@@ -182,7 +182,7 @@ int bind(int sockfd, const void* sockaddr, uint64_t addrlen) {
|
||||
// Output operands
|
||||
: "=r" (rtn)
|
||||
// Input operand
|
||||
: "r" ((int64_t)sockfd), "r"(sockaddr), "r"(addrlen)
|
||||
: "r" ((int64_t)sockfd), "r"(sockaddr), "r"((uint64_t)addrlen)
|
||||
// Clobbered registers
|
||||
: "x0", "x1", "x2", "x8"
|
||||
);
|
||||
@@ -208,7 +208,7 @@ int listen(int fd, int backlog) {
|
||||
return (int32_t)rtn;
|
||||
}
|
||||
|
||||
int accept(int sockfd, void* addr, uint64_t* addrlen) {
|
||||
int accept(int sockfd, void* addr, socklen_t* addrlen) {
|
||||
long int rtn;
|
||||
asm volatile (
|
||||
// Assembly Instructions
|
||||
@@ -228,7 +228,7 @@ int accept(int sockfd, void* addr, uint64_t* addrlen) {
|
||||
return (int32_t)rtn;
|
||||
}
|
||||
|
||||
int connect(int sockfd, void* addr, uint64_t addrlen) {
|
||||
int connect(int sockfd, void* addr, socklen_t addrlen) {
|
||||
long int rtn;
|
||||
asm volatile (
|
||||
// Assembly Instructions
|
||||
@@ -241,15 +241,15 @@ int connect(int sockfd, void* addr, uint64_t addrlen) {
|
||||
// Output operands
|
||||
: "=r" (rtn)
|
||||
// Input operand
|
||||
: "r" ((int64_t)sockfd), "r"(addr), "r"(addrlen)
|
||||
: "r" ((int64_t)sockfd), "r"(addr), "r"((uint64_t)addrlen)
|
||||
// Clobbered registers
|
||||
: "x0", "x1", "x2", "x8"
|
||||
);
|
||||
return (int32_t)rtn;
|
||||
}
|
||||
|
||||
int64_t sendto(int sockfd, const void* buf, uint64_t size, int flags, const void* sockaddr, uint64_t addrlen) {
|
||||
long int rtn;
|
||||
ssize_t sendto(int sockfd, const void* buf, size_t size, int flags, const void* sockaddr, socklen_t addrlen) {
|
||||
ssize_t rtn;
|
||||
asm volatile (
|
||||
// Assembly Instructions
|
||||
"mov x8, #206\n" // Syscall number for 'sendto' is 206 in AArch64
|
||||
@@ -264,15 +264,15 @@ int64_t sendto(int sockfd, const void* buf, uint64_t size, int flags, const void
|
||||
// Output operands
|
||||
: "=r" (rtn)
|
||||
// Input operand
|
||||
: "r" ((int64_t)sockfd), "r"(buf), "r"(size), "r"((int64_t)flags), "r"(sockaddr), "r"(addrlen)
|
||||
: "r" ((int64_t)sockfd), "r"(buf), "r"(size), "r"((int64_t)flags), "r"(sockaddr), "r"((uint64_t)addrlen)
|
||||
// Clobbered registers
|
||||
: "x0", "x1", "x2", "x3", "x4", "x5", "x8"
|
||||
);
|
||||
return rtn;
|
||||
}
|
||||
|
||||
int64_t recvfrom(int sockfd, const void* buf, uint64_t size, int flags, const void* sockaddr, uint64_t addrlen) {
|
||||
long int rtn;
|
||||
ssize_t recvfrom(int sockfd, const void* buf, size_t size, int flags, const void* sockaddr, socklen_t addrlen) {
|
||||
ssize_t rtn;
|
||||
asm volatile (
|
||||
// Assembly Instructions
|
||||
"mov x8, #207\n" // Syscall number for 'recvfrom' is 207 in AArch64
|
||||
@@ -287,7 +287,7 @@ int64_t recvfrom(int sockfd, const void* buf, uint64_t size, int flags, const vo
|
||||
// Output operands
|
||||
: "=r" (rtn)
|
||||
// Input operand
|
||||
: "r" ((int64_t)sockfd), "r"(buf), "r"(size), "r"((int64_t)flags), "r"(sockaddr), "r"(addrlen)
|
||||
: "r" ((int64_t)sockfd), "r"(buf), "r"(size), "r"((int64_t)flags), "r"(sockaddr), "r"((uint64_t)addrlen)
|
||||
// Clobbered registers
|
||||
: "x0", "x1", "x2", "x3", "x4", "x5", "x8", "memory"
|
||||
);
|
||||
|
||||
Reference in New Issue
Block a user