mirror of
https://github.com/libssh2/libssh2.git
synced 2025-10-29 00:54:50 +03:00
example, test_ssh2: shutdown socket before close
Syncing them with `tests/session_fixture.c`. Cherry-picked from #1017
This commit is contained in:
@@ -305,6 +305,7 @@ int main(int argc, char *argv[])
|
||||
shutdown:
|
||||
|
||||
if(forwardsock != LIBSSH2_INVALID_SOCKET) {
|
||||
shutdown(forwardsock, 2);
|
||||
#ifdef WIN32
|
||||
closesocket(forwardsock);
|
||||
#else
|
||||
@@ -313,6 +314,7 @@ shutdown:
|
||||
}
|
||||
|
||||
if(listensock != LIBSSH2_INVALID_SOCKET) {
|
||||
shutdown(listensock, 2);
|
||||
#ifdef WIN32
|
||||
closesocket(listensock);
|
||||
#else
|
||||
@@ -329,6 +331,7 @@ shutdown:
|
||||
}
|
||||
|
||||
if(sock != LIBSSH2_INVALID_SOCKET) {
|
||||
shutdown(sock, 2);
|
||||
#ifdef WIN32
|
||||
closesocket(sock);
|
||||
#else
|
||||
|
||||
@@ -178,6 +178,7 @@ shutdown:
|
||||
}
|
||||
|
||||
if(sock != LIBSSH2_INVALID_SOCKET) {
|
||||
shutdown(sock, 2);
|
||||
#ifdef WIN32
|
||||
closesocket(sock);
|
||||
#else
|
||||
|
||||
@@ -281,6 +281,7 @@ shutdown:
|
||||
}
|
||||
|
||||
if(sock != LIBSSH2_INVALID_SOCKET) {
|
||||
shutdown(sock, 2);
|
||||
#ifdef WIN32
|
||||
closesocket(sock);
|
||||
#else
|
||||
|
||||
@@ -207,6 +207,7 @@ shutdown:
|
||||
}
|
||||
|
||||
if(sock != LIBSSH2_INVALID_SOCKET) {
|
||||
shutdown(sock, 2);
|
||||
#ifdef WIN32
|
||||
closesocket(sock);
|
||||
#else
|
||||
|
||||
@@ -267,6 +267,7 @@ shutdown:
|
||||
}
|
||||
|
||||
if(sock != LIBSSH2_INVALID_SOCKET) {
|
||||
shutdown(sock, 2);
|
||||
#ifdef WIN32
|
||||
closesocket(sock);
|
||||
#else
|
||||
|
||||
@@ -290,6 +290,7 @@ shutdown:
|
||||
}
|
||||
|
||||
if(sock != LIBSSH2_INVALID_SOCKET) {
|
||||
shutdown(sock, 2);
|
||||
#ifdef WIN32
|
||||
closesocket(sock);
|
||||
#else
|
||||
|
||||
@@ -338,6 +338,7 @@ shutdown:
|
||||
}
|
||||
|
||||
if(sock != LIBSSH2_INVALID_SOCKET) {
|
||||
shutdown(sock, 2);
|
||||
#ifdef WIN32
|
||||
closesocket(sock);
|
||||
#else
|
||||
|
||||
@@ -227,6 +227,7 @@ shutdown:
|
||||
}
|
||||
|
||||
if(sock != LIBSSH2_INVALID_SOCKET) {
|
||||
shutdown(sock, 2);
|
||||
#ifdef WIN32
|
||||
closesocket(sock);
|
||||
#else
|
||||
|
||||
@@ -168,6 +168,7 @@ shutdown:
|
||||
}
|
||||
|
||||
if(sock != LIBSSH2_INVALID_SOCKET) {
|
||||
shutdown(sock, 2);
|
||||
#ifdef WIN32
|
||||
closesocket(sock);
|
||||
#else
|
||||
|
||||
@@ -167,6 +167,7 @@ shutdown:
|
||||
}
|
||||
|
||||
if(sock != LIBSSH2_INVALID_SOCKET) {
|
||||
shutdown(sock, 2);
|
||||
#ifdef WIN32
|
||||
closesocket(sock);
|
||||
#else
|
||||
|
||||
@@ -284,6 +284,7 @@ shutdown:
|
||||
}
|
||||
|
||||
if(sock != LIBSSH2_INVALID_SOCKET) {
|
||||
shutdown(sock, 2);
|
||||
#ifdef WIN32
|
||||
closesocket(sock);
|
||||
#else
|
||||
|
||||
@@ -211,6 +211,7 @@ shutdown:
|
||||
}
|
||||
|
||||
if(sock != LIBSSH2_INVALID_SOCKET) {
|
||||
shutdown(sock, 2);
|
||||
#ifdef WIN32
|
||||
closesocket(sock);
|
||||
#else
|
||||
|
||||
@@ -269,6 +269,7 @@ shutdown:
|
||||
}
|
||||
|
||||
if(sock != LIBSSH2_INVALID_SOCKET) {
|
||||
shutdown(sock, 2);
|
||||
#ifdef WIN32
|
||||
closesocket(sock);
|
||||
#else
|
||||
|
||||
@@ -280,6 +280,7 @@ shutdown:
|
||||
}
|
||||
|
||||
if(sock != LIBSSH2_INVALID_SOCKET) {
|
||||
shutdown(sock, 2);
|
||||
#ifdef WIN32
|
||||
closesocket(sock);
|
||||
#else
|
||||
|
||||
@@ -291,6 +291,7 @@ shutdown:
|
||||
}
|
||||
|
||||
if(sock != LIBSSH2_INVALID_SOCKET) {
|
||||
shutdown(sock, 2);
|
||||
#ifdef WIN32
|
||||
closesocket(sock);
|
||||
#else
|
||||
|
||||
@@ -231,6 +231,7 @@ shutdown:
|
||||
}
|
||||
|
||||
if(sock != LIBSSH2_INVALID_SOCKET) {
|
||||
shutdown(sock, 2);
|
||||
#ifdef WIN32
|
||||
closesocket(sock);
|
||||
#else
|
||||
|
||||
@@ -339,6 +339,7 @@ shutdown:
|
||||
}
|
||||
|
||||
if(sock != LIBSSH2_INVALID_SOCKET) {
|
||||
shutdown(sock, 2);
|
||||
#ifdef WIN32
|
||||
closesocket(sock);
|
||||
#else
|
||||
|
||||
@@ -234,6 +234,7 @@ shutdown:
|
||||
}
|
||||
|
||||
if(sock != LIBSSH2_INVALID_SOCKET) {
|
||||
shutdown(sock, 2);
|
||||
#ifdef WIN32
|
||||
closesocket(sock);
|
||||
#else
|
||||
|
||||
@@ -282,6 +282,7 @@ shutdown:
|
||||
}
|
||||
|
||||
if(sock != LIBSSH2_INVALID_SOCKET) {
|
||||
shutdown(sock, 2);
|
||||
#ifdef WIN32
|
||||
closesocket(sock);
|
||||
#else
|
||||
|
||||
@@ -353,6 +353,7 @@ shutdown:
|
||||
}
|
||||
|
||||
if(sock != LIBSSH2_INVALID_SOCKET) {
|
||||
shutdown(sock, 2);
|
||||
#ifdef WIN32
|
||||
closesocket(sock);
|
||||
#else
|
||||
|
||||
@@ -291,6 +291,7 @@ shutdown:
|
||||
}
|
||||
|
||||
if(sock != LIBSSH2_INVALID_SOCKET) {
|
||||
shutdown(sock, 2);
|
||||
#ifdef WIN32
|
||||
closesocket(sock);
|
||||
#else
|
||||
|
||||
@@ -289,6 +289,7 @@ shutdown:
|
||||
}
|
||||
|
||||
if(sock != LIBSSH2_INVALID_SOCKET) {
|
||||
shutdown(sock, 2);
|
||||
#ifdef WIN32
|
||||
closesocket(sock);
|
||||
#else
|
||||
|
||||
@@ -300,6 +300,7 @@ int main(int argc, char *argv[])
|
||||
shutdown:
|
||||
|
||||
if(forwardsock != LIBSSH2_INVALID_SOCKET) {
|
||||
shutdown(forwardsock, 2);
|
||||
#ifdef WIN32
|
||||
closesocket(forwardsock);
|
||||
#else
|
||||
@@ -319,6 +320,7 @@ shutdown:
|
||||
}
|
||||
|
||||
if(sock != LIBSSH2_INVALID_SOCKET) {
|
||||
shutdown(sock, 2);
|
||||
#ifdef WIN32
|
||||
closesocket(sock);
|
||||
#else
|
||||
|
||||
@@ -180,10 +180,12 @@ static void x11_callback(LIBSSH2_SESSION *session, LIBSSH2_CHANNEL *channel,
|
||||
chan_iter->next = new;
|
||||
}
|
||||
}
|
||||
else
|
||||
else {
|
||||
shutdown(sock, SHUT_RDWR);
|
||||
close(sock);
|
||||
}
|
||||
}
|
||||
}
|
||||
return;
|
||||
}
|
||||
|
||||
@@ -345,6 +347,7 @@ int main(int argc, char *argv[])
|
||||
if(rc) {
|
||||
fprintf(stderr, "Failed to authenticate\n");
|
||||
session_shutdown(session);
|
||||
shutdown(sock, SHUT_RDWR);
|
||||
close(sock);
|
||||
return -1;
|
||||
}
|
||||
@@ -354,6 +357,7 @@ int main(int argc, char *argv[])
|
||||
if(!channel) {
|
||||
fprintf(stderr, "Failed to open a new channel\n");
|
||||
session_shutdown(session);
|
||||
shutdown(sock, SHUT_RDWR);
|
||||
close(sock);
|
||||
return -1;
|
||||
}
|
||||
@@ -363,6 +367,7 @@ int main(int argc, char *argv[])
|
||||
if(rc) {
|
||||
fprintf(stderr, "Failed to request a pty\n");
|
||||
session_shutdown(session);
|
||||
shutdown(sock, SHUT_RDWR);
|
||||
close(sock);
|
||||
return -1;
|
||||
}
|
||||
@@ -372,6 +377,7 @@ int main(int argc, char *argv[])
|
||||
if(rc) {
|
||||
fprintf(stderr, "Failed to request X11 forwarding\n");
|
||||
session_shutdown(session);
|
||||
shutdown(sock, SHUT_RDWR);
|
||||
close(sock);
|
||||
return -1;
|
||||
}
|
||||
@@ -381,6 +387,7 @@ int main(int argc, char *argv[])
|
||||
if(rc) {
|
||||
fprintf(stderr, "Failed to open a shell\n");
|
||||
session_shutdown(session);
|
||||
shutdown(sock, SHUT_RDWR);
|
||||
close(sock);
|
||||
return -1;
|
||||
}
|
||||
@@ -389,6 +396,7 @@ int main(int argc, char *argv[])
|
||||
if(rc) {
|
||||
fprintf(stderr, "Failed to entered in raw mode\n");
|
||||
session_shutdown(session);
|
||||
shutdown(sock, SHUT_RDWR);
|
||||
close(sock);
|
||||
return -1;
|
||||
}
|
||||
|
||||
@@ -228,6 +228,7 @@ shutdown:
|
||||
}
|
||||
|
||||
if(sock != LIBSSH2_INVALID_SOCKET) {
|
||||
shutdown(sock, 2 /* SHUT_RDWR */);
|
||||
#ifdef WIN32
|
||||
closesocket(sock);
|
||||
#else
|
||||
|
||||
Reference in New Issue
Block a user