For 32-bit Android `socklen_t` is defined as `int32_t`.

diff -uNr WasmEdge/include/host/wasi/environ.h WasmEdge.mod/include/host/wasi/environ.h
--- WasmEdge/include/host/wasi/environ.h	2022-07-28 18:56:12.000000000 +0800
+++ WasmEdge.mod/include/host/wasi/environ.h	2022-08-15 01:51:55.617253141 +0800
@@ -1015,7 +1015,7 @@
   WasiExpect<void> sockGetOpt(__wasi_fd_t Fd,
                               __wasi_sock_opt_level_t SockOptLevel,
                               __wasi_sock_opt_so_t SockOptName, void *FlagPtr,
-                              uint32_t *FlagSizePtr) const noexcept {
+                              socklen_t *FlagSizePtr) const noexcept {
     auto Node = getNodeOrNull(Fd);
     if (unlikely(!Node)) {
       return WasiUnexpect(__WASI_ERRNO_BADF);
diff -uNr WasmEdge/include/host/wasi/inode.h WasmEdge.mod/include/host/wasi/inode.h
--- WasmEdge/include/host/wasi/inode.h	2022-07-28 18:56:12.000000000 +0800
+++ WasmEdge.mod/include/host/wasi/inode.h	2022-08-15 01:52:42.628642901 +0800
@@ -595,7 +595,7 @@
 
   WasiExpect<void> sockGetOpt(__wasi_sock_opt_level_t SockOptLevel,
                               __wasi_sock_opt_so_t SockOptName, void *FlagPtr,
-                              uint32_t *FlagSizePtr) const noexcept;
+                              socklen_t *FlagSizePtr) const noexcept;
 
   WasiExpect<void> sockSetOpt(__wasi_sock_opt_level_t SockOptLevel,
                               __wasi_sock_opt_so_t SockOptName, void *FlagPtr,
diff -uNr WasmEdge/include/host/wasi/vinode.h WasmEdge.mod/include/host/wasi/vinode.h
--- WasmEdge/include/host/wasi/vinode.h	2022-07-28 18:56:12.000000000 +0800
+++ WasmEdge.mod/include/host/wasi/vinode.h	2022-08-15 01:53:09.700443206 +0800
@@ -654,7 +654,7 @@
 
   WasiExpect<void> sockGetOpt(__wasi_sock_opt_level_t SockOptLevel,
                               __wasi_sock_opt_so_t SockOptName, void *FlagPtr,
-                              uint32_t *FlagSizePtr) const noexcept {
+                              socklen_t *FlagSizePtr) const noexcept {
     return Node.sockGetOpt(SockOptLevel, SockOptName, FlagPtr, FlagSizePtr);
   }
 
diff -uNr WasmEdge/include/host/wasi/wasifunc.h WasmEdge.mod/include/host/wasi/wasifunc.h
--- WasmEdge/include/host/wasi/wasifunc.h	2022-07-28 18:56:12.000000000 +0800
+++ WasmEdge.mod/include/host/wasi/wasifunc.h	2022-08-15 01:54:16.532418910 +0800
@@ -457,7 +457,7 @@
 
   Expect<uint32_t> body(Runtime::Instance::MemoryInstance *MemInst, int32_t Fd,
                         uint32_t SockOptLevel, uint32_t SockOptName,
-                        uint32_t FlagPtr, uint32_t FlagSizePtr);
+                        uint32_t FlagPtr, socklen_t FlagSizePtr);
 };
 
 class WasiSockSetOpt : public Wasi<WasiSockSetOpt> {
diff -uNr WasmEdge/lib/host/wasi/inode-linux.cpp WasmEdge.mod/lib/host/wasi/inode-linux.cpp
--- WasmEdge/lib/host/wasi/inode-linux.cpp	2022-07-28 18:56:12.000000000 +0800
+++ WasmEdge.mod/lib/host/wasi/inode-linux.cpp	2022-08-15 01:55:09.152974492 +0800
@@ -1136,7 +1136,7 @@
 WasiExpect<void> INode::sockGetOpt(__wasi_sock_opt_level_t SockOptLevel,
                                    __wasi_sock_opt_so_t SockOptName,
                                    void *FlagPtr,
-                                   uint32_t *FlagSizePtr) const noexcept {
+                                   socklen_t *FlagSizePtr) const noexcept {
   auto SysSockOptLevel = toSockOptLevel(SockOptLevel);
   auto SysSockOptName = toSockOptSoName(SockOptName);
   if (SockOptName == __WASI_SOCK_OPT_SO_ERROR) {
diff -uNr WasmEdge/lib/host/wasi/wasifunc.cpp WasmEdge.mod/lib/host/wasi/wasifunc.cpp
--- WasmEdge/lib/host/wasi/wasifunc.cpp	2022-07-28 18:56:12.000000000 +0800
+++ WasmEdge.mod/lib/host/wasi/wasifunc.cpp	2022-08-15 01:56:27.730339246 +0800
@@ -2061,7 +2061,7 @@
 Expect<uint32_t> WasiSockGetOpt::body(const Runtime::CallingFrame &Frame,
                                       int32_t Fd, uint32_t SockOptLevel,
                                       uint32_t SockOptName, uint32_t FlagPtr,
-                                      uint32_t FlagSizePtr) {
+                                      socklen_t FlagSizePtr) {
   auto *MemInst = Frame.getMemoryByIndex(0);
   if (MemInst == nullptr) {
     return __WASI_ERRNO_FAULT;
@@ -2080,7 +2080,7 @@
     WasiSockOptName = *Res;
   }
 
-  uint32_t *InnerFlagSizePtr = MemInst->getPointer<uint32_t *>(FlagSizePtr);
+  socklen_t *InnerFlagSizePtr = MemInst->getPointer<socklen_t *>(FlagSizePtr);
   if (InnerFlagSizePtr == nullptr) {
     return __WASI_ERRNO_FAULT;
   }
