summaryrefslogtreecommitdiff
path: root/package/uhttpd/src/uhttpd.c
diff options
context:
space:
mode:
authorJo-Philipp Wich <jow@openwrt.org>2011-07-18 14:18:31 +0000
committerJo-Philipp Wich <jow@openwrt.org>2011-07-18 14:18:31 +0000
commit6576d110d2ce6e01dce282cc64b2aea6521814a9 (patch)
tree628f71deac8a5f6afa3413da4928f1f231fbabe6 /package/uhttpd/src/uhttpd.c
parent75d2ba7a5cc6c4aa8b4b67d56f9cd650d0387be2 (diff)
downloadmtk-20170518-6576d110d2ce6e01dce282cc64b2aea6521814a9.zip
mtk-20170518-6576d110d2ce6e01dce282cc64b2aea6521814a9.tar.gz
mtk-20170518-6576d110d2ce6e01dce282cc64b2aea6521814a9.tar.bz2
uhttpd: support building against openssl instead of cyassl, minor cleanups (#7827)
SVN-Revision: 27686
Diffstat (limited to 'package/uhttpd/src/uhttpd.c')
-rw-r--r--package/uhttpd/src/uhttpd.c17
1 files changed, 16 insertions, 1 deletions
diff --git a/package/uhttpd/src/uhttpd.c b/package/uhttpd/src/uhttpd.c
index 4a3bced..3563d91 100644
--- a/package/uhttpd/src/uhttpd.c
+++ b/package/uhttpd/src/uhttpd.c
@@ -512,7 +512,22 @@ static void uh_mainloop(struct config *conf, fd_set serv_fds, int max_fd)
#ifdef HAVE_TLS
/* setup client tls context */
if( conf->tls )
- conf->tls_accept(cl);
+ {
+ if( conf->tls_accept(cl) < 1 )
+ {
+ fprintf(stderr,
+ "tls_accept failed, "
+ "connection dropped\n");
+
+ /* close client socket */
+ close(new_fd);
+
+ /* remove from global client list */
+ uh_client_remove(new_fd);
+
+ continue;
+ }
+ }
#endif
/* add client socket to global fdset */