WinSock2 - setsockopt()



  • Hi!
    Ich möchte die Timeoutwerte für die Funktionen recv und send abändern...

    mein Ansatz dazu:

    int re = 0;
        int lenght = 30; // 30sec Timeout
        re = setsockopt(m_Socket,SOL_SOCKET,SO_RCVTIMEO,(const char*)lenght,sizeof(lenght));
    

    So und dann hat re einen Wert != 0 -> also Fehler... den überprüfe ich dann mit
    WSAGetLastError()
    und dann bekomme ich das heraus: WSAEFAULT -> "optval is not in a valid part of the process address space or optlen parameter is too small."
    Aber optlen habe ich ja sizeof(lenght) also sollte das nicht zu klein sein, oder?
    Ich glaube der Fehler liegt hier: "(const char*)lenght"
    nur was ist daran falsch? ( falscher cast? )
    Danke



  • re = setsockopt(m_Socket,SOL_SOCKET,SO_RCVTIMEO,(const char*)lenght,sizeof(lenght));
    

    müsste das nicht (const char*)&lenght sein ?

    (P.S.: lenght schreibt man length :D)



  • lol toller Rechtschreibfehler ^^ danke 🙂


Anmelden zum Antworten