diff options
author | Steve Bennett <steveb@workware.net.au> | 2022-08-21 13:34:06 +1000 |
---|---|---|
committer | Steve Bennett <steveb@workware.net.au> | 2022-08-21 13:44:11 +1000 |
commit | b34568b240e5dc7195fb1000aebb4fababd8850c (patch) | |
tree | fdad5c63588b156f8e53a8b0d3b2b72af0ef0e51 | |
parent | 6afd4fc5319204651614e531a94f97b172740517 (diff) | |
download | jimtcl-b34568b240e5dc7195fb1000aebb4fababd8850c.zip jimtcl-b34568b240e5dc7195fb1000aebb4fababd8850c.tar.gz jimtcl-b34568b240e5dc7195fb1000aebb4fababd8850c.tar.bz2 |
aio: socket filename should provide something useful if possible
For socket types that take an address, it would be useful to return
that with 'filename'. If not, we can continue to return the
socket type.
-rw-r--r-- | jim-aio.c | 9 |
1 files changed, 7 insertions, 2 deletions
@@ -2158,7 +2158,7 @@ static int JimAioOpenPtyCommand(Jim_Interp *interp, int argc, Jim_Obj *const *ar return JIM_ERR; } - /* Note: The slave path will be used for both master and slave */ + /* Note: The replica path will be used for both handles slave */ return JimMakeChannelPair(interp, p, Jim_NewStringObj(interp, path, -1), "aio.pty%ld", 0, mode); } #endif @@ -2200,6 +2200,7 @@ static int JimAioSockCommand(Jim_Interp *interp, int argc, Jim_Obj *const *argv) const char *addr = NULL; const char *bind_addr = NULL; const char *connect_addr = NULL; + Jim_Obj *filename = NULL; union sockaddr_any sa; socklen_t salen; int on = 1; @@ -2251,6 +2252,7 @@ static int JimAioSockCommand(Jim_Interp *interp, int argc, Jim_Obj *const *argv) if (argc > 2) { addr = Jim_String(argv[2]); + filename = argv[2]; } #if defined(HAVE_SOCKETPAIR) && UNIX_SOCKETS @@ -2416,8 +2418,11 @@ static int JimAioSockCommand(Jim_Interp *interp, int argc, Jim_Obj *const *argv) return JIM_ERR; } } + if (!filename) { + filename = argv[1]; + } - return JimMakeChannel(interp, NULL, sock, argv[1], "aio.sock%ld", family, "r+", 0) ? JIM_OK : JIM_ERR; + return JimMakeChannel(interp, NULL, sock, filename, "aio.sock%ld", family, "r+", 0) ? JIM_OK : JIM_ERR; } #endif /* JIM_BOOTSTRAP */ |