MCPcopy Create free account
hub / github.com/danoon2/Boxedwine / getpeername

Method getpeername

source/kernel/knativesocket.cpp:1086–1102  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

1084}
1085
1086U32 KNativeSocketObject::getpeername(KThread* thread, const KFileDescriptorPtr& fd, U32 address, U32 plen) {
1087 KMemory* memory = thread->memory;
1088 //socklen_t len = (socklen_t)memory->readd( plen);
1089 struct sockaddr_in addr = {0};
1090 socklen_t nativeLen = sizeof(struct sockaddr_in);
1091
1092 S32 result = ::getpeername(this->nativeSocket, (struct sockaddr*)&addr, &nativeLen);
1093 if (result==0) {
1094 writeSockAddrIn(&addr, memory, address);
1095 memory->writed(plen, 16);
1096 this->error = 0;
1097 } else {
1098 std::shared_ptr< KNativeSocketObject> t = std::dynamic_pointer_cast<KNativeSocketObject>(shared_from_this());
1099 result = handleNativeSocketError(t, false);
1100 }
1101 return result;
1102}
1103
1104U32 KNativeSocketObject::shutdown(KThread* thread, const KFileDescriptorPtr& fd, U32 how) {
1105 LOG_SOCK("native socket: %x shutdown", nativeSocket);

Callers

nothing calls this directly

Calls 3

writeSockAddrInFunction · 0.85
handleNativeSocketErrorFunction · 0.85
writedMethod · 0.45

Tested by

no test coverage detected