Re: Issue with select after SSL_get_wfd

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi Grace,

UDP is a datagram service - think of it as “fire and forget”. So the sending socket will not know if or when the packet has been delivered to the receiver, let alone that it has been consumed. You could, of course, create your own application level acks and retries etcetera, but before you know it you are rebuilding TCP.

See e.g. https://www.diffen.com/difference/TCP_vs_UDP for a comparison between UDP and TCP.

rgds,

Hugh

On 16 Feb 2018, at 04:35, Grace Priscilla Jero <grace.priscilla@xxxxxxxxx> wrote:

Hi All,

I want to know the status of the SSL_WRITE for DTLS on UDP on a non-blocking socket. Only if the other end does the recvfrom I want to continue with subsequent SSL_WRITE.

Below is what I have tried.

//Making the socket blocking - if I dont do below then select call hangs

if (wfd = SSL_get_wfd(ssl))
    {
            flags = fcntl(wfd, F_GETFL);
            flags &= ~O_NONBLOCK;
            fcntl(a_wfd, F_SETFL, flags);

                FD_SET(wfd, &write_fds);
    }
len = SSL_write(          ssl,
                                     buf,
                                     elen);

i = select(wfd+1, NULL, &write_fds, 0, 0);

The other side has not yet done the SSL_read but i is "1".
Is their something wrong with this?

Thanks,
Grace

--
openssl-users mailing list
To unsubscribe: https://mta.openssl.org/mailman/listinfo/openssl-users

-- 
openssl-users mailing list
To unsubscribe: https://mta.openssl.org/mailman/listinfo/openssl-users

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Index of Archives]     [Linux ARM Kernel]     [Linux ARM]     [Linux Omap]     [Fedora ARM]     [IETF Annouce]     [Security]     [Bugtraq]     [Linux]     [Linux OMAP]     [Linux MIPS]     [ECOS]     [Asterisk Internet PBX]     [Linux API]

  Powered by Linux