diff options
author | Evgeny Grin (Karlson2k) <k2k@narod.ru> | 2022-05-14 15:20:53 +0300 |
---|---|---|
committer | Evgeny Grin (Karlson2k) <k2k@narod.ru> | 2022-05-14 15:20:53 +0300 |
commit | 57f3e09813b2af5a1e7cdd63ce83d968e17d7352 (patch) | |
tree | da0e186a06543b85b161023502cefa35843489b2 | |
parent | 85ae657849685d27b79ae6b14f7248d81ec99d2c (diff) | |
download | libmicrohttpd-57f3e09813b2af5a1e7cdd63ce83d968e17d7352.tar.gz libmicrohttpd-57f3e09813b2af5a1e7cdd63ce83d968e17d7352.zip |
Return NULL for MHD_CONNECTION_INFO_CLIENT_ADDRESS if information is not available
Pipe or UNIX socket connections may have no client address
-rw-r--r-- | src/microhttpd/connection.c | 16 |
1 files changed, 10 insertions, 6 deletions
diff --git a/src/microhttpd/connection.c b/src/microhttpd/connection.c index ab659064..949e6ec4 100644 --- a/src/microhttpd/connection.c +++ b/src/microhttpd/connection.c | |||
@@ -5041,12 +5041,16 @@ MHD_get_connection_info (struct MHD_Connection *connection, | |||
5041 | return &connection->connection_info_dummy; | 5041 | return &connection->connection_info_dummy; |
5042 | #endif /* HTTPS_SUPPORT */ | 5042 | #endif /* HTTPS_SUPPORT */ |
5043 | case MHD_CONNECTION_INFO_CLIENT_ADDRESS: | 5043 | case MHD_CONNECTION_INFO_CLIENT_ADDRESS: |
5044 | memset (&connection->connection_info_dummy.client_addr, 0, | 5044 | if (0 < connection->addr_len) |
5045 | sizeof (connection->connection_info_dummy.client_addr)); | 5045 | { |
5046 | memcpy (&connection->connection_info_dummy.client_addr, | 5046 | memset (&connection->connection_info_dummy.client_addr, 0, |
5047 | &connection->addr, | 5047 | sizeof (connection->connection_info_dummy.client_addr)); |
5048 | connection->addr_len); | 5048 | memcpy (&connection->connection_info_dummy.client_addr, |
5049 | return &connection->connection_info_dummy; | 5049 | &connection->addr, |
5050 | (size_t) connection->addr_len); | ||
5051 | return &connection->connection_info_dummy; | ||
5052 | } | ||
5053 | return NULL; | ||
5050 | case MHD_CONNECTION_INFO_DAEMON: | 5054 | case MHD_CONNECTION_INFO_DAEMON: |
5051 | connection->connection_info_dummy.daemon = connection->daemon; | 5055 | connection->connection_info_dummy.daemon = connection->daemon; |
5052 | return &connection->connection_info_dummy; | 5056 | return &connection->connection_info_dummy; |