| 1066 | } |
| 1067 | |
| 1068 | U32 KNativeSocketObject::getsockname(KThread* thread, const KFileDescriptorPtr& fd, U32 address, U32 plen) { |
| 1069 | KMemory* memory = thread->memory; |
| 1070 | |
| 1071 | //socklen_t len = (socklen_t)memory->readd( plen); |
| 1072 | struct sockaddr_in addr = {0}; |
| 1073 | socklen_t nativeLen = sizeof(struct sockaddr_in); |
| 1074 | U32 result = ::getsockname(this->nativeSocket, (struct sockaddr*)&addr, &nativeLen); |
| 1075 | if (result) { |
| 1076 | std::shared_ptr< KNativeSocketObject> t = std::dynamic_pointer_cast<KNativeSocketObject>(shared_from_this()); |
| 1077 | result = handleNativeSocketError(t, false); |
| 1078 | } else { |
| 1079 | writeSockAddrIn(&addr, memory, address); |
| 1080 | memory->writed(plen, 16); |
| 1081 | this->error = 0; |
| 1082 | } |
| 1083 | return result; |
| 1084 | } |
| 1085 | |
| 1086 | U32 KNativeSocketObject::getpeername(KThread* thread, const KFileDescriptorPtr& fd, U32 address, U32 plen) { |
| 1087 | KMemory* memory = thread->memory; |
nothing calls this directly
no test coverage detected