CapsAdmin / luajitsocket

pure luajit ffi socket bindings for unix and windows
MIT License
36 stars 5 forks source link

Error on Linux #2

Closed dlannan-fmad closed 5 months ago

dlannan-fmad commented 3 years ago

Tried this out today. Quite an impressive little toolkit. Found this is a problem on Linux: https://github.com/CapsAdmin/luajitsocket/blob/84f90d72f9ff5617bd3269afb5a8a56fe2dbf27c/ljsocket.lua#L691 Need to put something like at line 696 and remove from the table initialisation: errno.EWOULDBLOCK = errno.EAGAIN

Otherwise works well. Where the libtls.so is built from? Would be good to be able to run some tls tests.

tst2005 commented 3 years ago

yes the lua syntax does not support this way.

It sould be

    errno = {
        EAGAIN = 11,
        ENOTSOCK = 88,
        ECONNRESET = 104,
        EINPROGRESS = 115,
    }
    errno.EWOULDBLOCK = errno.EAGAIN

or

    errno = {}
    errno.EAGAIN = 11,
    errno.EWOULDBLOCK = errno.EAGAIN
    errno.ENOTSOCK = 88
    errno.ECONNRESET = 104
    errno.EINPROGRESS = 115    
CapsAdmin commented 2 years ago

Thanks. I didn't notice activity on this repo due to all the noise in general on github. I'll watch all activity from now on.

It's been a while but I think libtls was built with https://github.com/CapsAdmin/goluwa/blob/master/core/lua/ffibuild/libressl.lua

Ideally it would be nice to just use some existing openssl luajit binding. I believe libtls is just a high level wrapper for the "openssl spec" made in C.