projects
/
BearSSL
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Fixed typo in comment.
[BearSSL]
/
tools
/
server.c
diff --git
a/tools/server.c
b/tools/server.c
index
cac99c4
..
a97de35
100644
(file)
--- a/
tools/server.c
+++ b/
tools/server.c
@@
-75,7
+75,7
@@
host_bind(const char *host, const char *port, int verbose)
sa = (struct sockaddr *)p->ai_addr;
if (sa->sa_family == AF_INET) {
sa = (struct sockaddr *)p->ai_addr;
if (sa->sa_family == AF_INET) {
-
sa4 = *(struct sockaddr_in *)sa
;
+
memcpy(&sa4, sa, sizeof sa4)
;
sa = (struct sockaddr *)&sa4;
sa_len = sizeof sa4;
addr = &sa4.sin_addr;
sa = (struct sockaddr *)&sa4;
sa_len = sizeof sa4;
addr = &sa4.sin_addr;
@@
-83,7
+83,7
@@
host_bind(const char *host, const char *port, int verbose)
sa4.sin_addr.s_addr = INADDR_ANY;
}
} else if (sa->sa_family == AF_INET6) {
sa4.sin_addr.s_addr = INADDR_ANY;
}
} else if (sa->sa_family == AF_INET6) {
-
sa6 = *(struct sockaddr_in6 *)sa
;
+
memcpy(&sa6, sa, sizeof sa6)
;
sa = (struct sockaddr *)&sa6;
sa_len = sizeof sa6;
addr = &sa6.sin6_addr;
sa = (struct sockaddr *)&sa6;
sa_len = sizeof sa6;
addr = &sa6.sin6_addr;
@@
-1058,6
+1058,9
@@
do_server(int argc, char *argv[])
if ((req & REQ_AESCBC) != 0) {
br_ssl_engine_set_default_aes_cbc(&cc.eng);
}
if ((req & REQ_AESCBC) != 0) {
br_ssl_engine_set_default_aes_cbc(&cc.eng);
}
+ if ((req & REQ_AESCCM) != 0) {
+ br_ssl_engine_set_default_aes_ccm(&cc.eng);
+ }
if ((req & REQ_AESGCM) != 0) {
br_ssl_engine_set_default_aes_gcm(&cc.eng);
}
if ((req & REQ_AESGCM) != 0) {
br_ssl_engine_set_default_aes_gcm(&cc.eng);
}
@@
-1215,6
+1218,13
@@
server_exit:
closesocket(fd);
#else
close(fd);
closesocket(fd);
#else
close(fd);
+#endif
+ }
+ if (server_fd != INVALID_SOCKET) {
+#ifdef _WIN32
+ closesocket(server_fd);
+#else
+ close(server_fd);
#endif
}
return retcode;
#endif
}
return retcode;