Discussion: Ignore invalid argument error for system call on sbcl by charJe · Pull Request #80 · usocket/usocket · GitHub
Skip to content

Discussion: Ignore invalid argument error for system call on sbcl#80

Merged
binghe merged 1 commit into
usocket:masterfrom
charJe:master
Apr 7, 2022
Merged

Discussion: Ignore invalid argument error for system call on sbcl#80
binghe merged 1 commit into
usocket:masterfrom
charJe:master

Conversation

@charJe

@charJe charJe commented Apr 6, 2022

Copy link
Copy Markdown
Contributor

This was causing me trouble when the client would disconnect before
the server could call getpeername.

Adding handler-case around the calls to get-peer-name seems to fix it. Other errors will need to be added for non-sbcl.

This was causing me trouble when the client would disconnect before
the server could call getpeername.
@binghe

binghe commented Apr 7, 2022

Copy link
Copy Markdown
Member

@binghe binghe merged commit b720911 into usocket:master Apr 7, 2022
@catap

catap commented Sep 26, 2023

Copy link
Copy Markdown

@binghe seems that I've discovered similar issue. A kind of:

    Expect (EQUAL (DEXADOR:POST (LOCALHOST) :CONTENT "body") "body") to be true.
        at /opt/local/var/macports/build/_Users_catap_src_macports-ports_lisp_cl-clack/cl-clack/work/build/source/cl-clack/src/test/suite.lisp:452:4
    INVALID-ARGUMENT-ERROR: Condition USOCKET:INVALID-ARGUMENT-ERROR was signalled.
      (EQUAL (DEXADOR:POST (CLACK.TEST.SUITE::LOCALHOST) :CONTENT . #1=("body"))
             . #1#)

      0: (USOCKET::HANDLE-CONDITION Socket error in "getpeername": EINVAL (Invalid argument) #<STREAM-USOCKET {100683FF73}> 127.0.0.1)
      1: (SB-KERNEL::%SIGNAL Socket error in "getpeername": EINVAL (Invalid argument))
      2: (ERROR Socket error in "getpeername": EINVAL (Invalid argument))
      3: (USOCKET:SOCKET-CONNECT 127.0.0.1 4949 PROTOCOL STREAM ELEMENT-TYPE (UNSIGNED-BYTE 8) TIMEOUT 10 DEADLINE NIL NODELAY T LOCAL-HOST NIL LOCAL-PORT NIL)
      4: ((LABELS DEXADOR.BACKEND.USOCKET::MAKE-NEW-CONNECTION :IN DEXADOR.BACKEND.USOCKET:REQUEST) http://127.0.0.1:4949/)
      5: (DEXADOR.BACKEND.USOCKET:REQUEST #<unavailable argument> METHOD GET)
      6: ((LAMBDA NIL :IN "/opt/local/var/macports/build/_Users_catap_src_macports-ports_lisp_cl-clack/cl-clack/work/build/source/cl-clack/src/test/suite.lisp"))
      7: (ROVE/CORE/TEST::CALL-WITH-TESTING-WITH-OPTIONS Do not crash when the app dies NIL #<FUNCTION (LAMBDA NIL :IN "/opt/local/var/macports/build/_Users_catap_src_macports-ports_lisp_cl-clack/cl-clack/work/build/source/cl-clack/src/test/suite.lisp") {53C277CB}>)
      8: (CLACK.TEST::%TESTING-APP #<FUNCTION (LAMBDA (CLACK.TEST.SUITE::ENV) :IN "/opt/local/var/macports/build/_Users_catap_src_macports-ports_lisp_cl-clack/cl-clack/work/build/source/cl-clack/src/test/suite.lisp") {53C2796B}> #<FUNCTION (LAMBDA NIL :IN "/opt/local/var/macports/build/_Users_catap_src_macports-ports_lisp_cl-clack/cl-clack/work/build/source/cl-clack/src/test/suite.lisp") {53C2777B}>)
      9: ((LAMBDA NIL :IN "/opt/local/var/macports/build/_Users_catap_src_macports-ports_lisp_cl-clack/cl-clack/work/build/source/cl-clack/src/test/suite.lisp"))
      10: (ROVE/CORE/TEST::CALL-WITH-TESTING-WITH-OPTIONS debug-tests DEBUG-TESTS #<FUNCTION (LAMBDA NIL :IN "/opt/local/var/macports/build/_Users_catap_src_macports-ports_lisp_cl-clack/cl-clack/work/build/source/cl-clack/src/test/suite.lisp") {53C2765B}>)
      11: ((:METHOD ROVE/CORE/SUITE/PACKAGE:RUN-SUITE (ROVE/CORE/SUITE/PACKAGE::SUITE)) #<SUITE {10060AA8C3}>)
      12: (CLACK.TEST.SUITE:RUN-SERVER-TESTS FCGI)
      13: ((LAMBDA NIL :IN "/opt/local/var/macports/build/_Users_catap_src_macports-ports_lisp_cl-clack/cl-clack/work/build/source/cl-clack/t/handler/fcgi.lisp"))
      14: (ROVE/CORE/TEST::CALL-WITH-TESTING-WITH-OPTIONS fcgi-tests FCGI-TESTS #<FUNCTION (LAMBDA NIL :IN "/opt/local/var/macports/build/_Users_catap_src_macports-ports_lisp_cl-clack/cl-clack/work/build/source/cl-clack/t/handler/fcgi.lisp") {53C27ADB}>)

@binghe

binghe commented Sep 27, 2023

Copy link
Copy Markdown
Member

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants