From 205e144a085488b64a93dc6ab23980a4aa35fedd Mon Sep 17 00:00:00 2001 From: maosiping Date: Thu, 31 Mar 2022 13:05:15 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E6=94=B9=E7=BC=96=E8=AF=91=E8=84=9A?= =?UTF-8?q?=E6=9C=AC?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: maosiping --- .gitignore | 2 + BUILD.gn | 11 +--- OAT.xml | 65 +++++++++++++++++++ README.OpenSource | 11 ++++ lws_config.h => include/lws_config.h | 31 ++++----- .../lws_config_private.h | 12 ++-- 6 files changed, 99 insertions(+), 33 deletions(-) create mode 100644 OAT.xml create mode 100644 README.OpenSource rename lws_config.h => include/lws_config.h (90%) rename lws_config_private.h => include/lws_config_private.h (96%) diff --git a/.gitignore b/.gitignore index 1fb8b7e0..9134b29b 100644 --- a/.gitignore +++ b/.gitignore @@ -62,3 +62,5 @@ doc /q/ /b1/ /destdir/ +.idea +cmake-build-debug diff --git a/BUILD.gn b/BUILD.gn index 56f0596b..32c2202b 100644 --- a/BUILD.gn +++ b/BUILD.gn @@ -1,4 +1,4 @@ -# Copyright (c) 2021 Huawei Device Co., Ltd. +# Copyright (c) 2021-2022 Huawei Device Co., Ltd. # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. # You may obtain a copy of the License at @@ -13,7 +13,7 @@ import("//build/ohos.gni") -ohos_shared_library("websockets") { +ohos_static_library("websockets") { sources = [ "//third_party/libwebsockets/lib/core/alloc.c", "//third_party/libwebsockets/lib/core/buflist.c", @@ -87,7 +87,6 @@ ohos_shared_library("websockets") { ] include_dirs = [ - "//third_party/libwebsockets", "//third_party/libwebsockets/include", "//third_party/libwebsockets/include/libwebsockets", "//third_party/libwebsockets/include/libwebsockets/abstract", @@ -123,7 +122,6 @@ ohos_shared_library("websockets") { "-Os", "-g", "-Wall", - "-DOPENSSL_NO_TLS1_2_METHOD", "-fno-strict-aliasing", "-fvisibility=hidden", "-Wmissing-declarations", @@ -132,11 +130,8 @@ ohos_shared_library("websockets") { ] deps = [ - "//third_party/openssl:crypto_source", + "//third_party/openssl:libcrypto_static", "//third_party/openssl:ssl_source", "//third_party/zlib:libz", ] - - part_name = "netstack" - subsystem_name = "communication" } diff --git a/OAT.xml b/OAT.xml new file mode 100644 index 00000000..2887edf2 --- /dev/null +++ b/OAT.xml @@ -0,0 +1,65 @@ + + + + + + + + + + + + + + + + + + + + + diff --git a/README.OpenSource b/README.OpenSource new file mode 100644 index 00000000..335eca6e --- /dev/null +++ b/README.OpenSource @@ -0,0 +1,11 @@ +[ + { + "Name" : "libwebsockets", + "License" : "The MIT License", + "License File" : "LICENSE", + "Version Number" : "v4.0.2", + "Owner" : "lichunlin2@huawei.com", + "Upstream URL" : "https://libwebsockets.org", + "Description" : "Libwebsockets (LWS) is a flexible, lightweight pure C library for implementing modern network protocols easily with a tiny footprint, using a nonblocking event loop." + } +] \ No newline at end of file diff --git a/lws_config.h b/include/lws_config.h similarity index 90% rename from lws_config.h rename to include/lws_config.h index 01d942ad..7fd230a0 100644 --- a/lws_config.h +++ b/include/lws_config.h @@ -1,7 +1,7 @@ /* * libwebsockets - small server side websockets and web server implementation * - * Copyright (C) 2021 Huawei Device Co., Ltd. + * Copyright (C) 2021-2022 Huawei Device Co., Ltd. * * Permission is hereby granted, free of charge, to any person obtaining a copy * of this software and associated documentation files (the "Software"), to @@ -21,13 +21,13 @@ * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS * IN THE SOFTWARE. */ - + /* lws_config.h Generated from lws_config.h.in */ #ifndef NDEBUG - #ifndef _DEBUG - #define _DEBUG - #endif + #ifndef _DEBUG + #define _DEBUG + #endif #endif #define LWS_INSTALL_DATADIR "/usr/local/share" @@ -43,7 +43,7 @@ /* #undef LWS_LIBRARY_VERSION_NUMBER */ /* #undef LWS_AVOID_SIGPIPE_IGN */ -/* #undef LWS_BUILD_HASH */ +#define LWS_BUILD_HASH "b0f8105c" /* #undef LWS_BUILTIN_GETIFADDRS */ #define LWS_CLIENT_HTTP_PROXYING /* #undef LWS_DETECTED_PLAT_IOS */ @@ -53,13 +53,10 @@ /* #undef LWS_HAVE__ATOI64 */ #define LWS_HAVE_ATOLL #define LWS_HAVE_BN_bn2binpad -/* #undef LWS_HAVE_BN_bn2binpad */ #define LWS_HAVE_CLOCK_GETTIME -/* #undef LWS_HAVE_EC_POINT_get_affine_coordinates */ +#define LWS_HAVE_EC_POINT_get_affine_coordinates #define LWS_HAVE_ECDSA_SIG_set0 #define LWS_HAVE_EVP_MD_CTX_free -/* #undef LWS_HAVE_ECDSA_SIG_set0 */ -/* #undef LWS_HAVE_EVP_MD_CTX_free */ #define LWS_HAVE_EVP_aes_128_wrap #define LWS_HAVE_EVP_aes_128_cfb8 #define LWS_HAVE_EVP_aes_128_cfb128 @@ -71,7 +68,6 @@ #define LWS_HAVE_EXECVPE /* #undef LWS_HAVE_LIBCAP */ #define LWS_HAVE_HMAC_CTX_new -/* #undef LWS_HAVE_HMAC_CTX_new */ #define LWS_HAVE_MALLOC_H #define LWS_HAVE_MALLOC_TRIM #define LWS_HAVE_MALLOC_USABLE_SIZE @@ -82,31 +78,30 @@ /* #undef LWS_HAVE_mbedtls_ssl_set_hs_ca_chain */ /* #undef LWS_HAVE_mbedtls_ssl_set_hs_own_cert */ /* #undef LWS_HAVE_mbedtls_ssl_set_hs_authmode */ -/* #undef LWS_HAVE_MBEDTLS_NET_SOCKETS */ +#define LWS_HAVE_MBEDTLS_NET_SOCKETS /* #undef LWS_HAVE_NEW_UV_VERSION_H */ #define LWS_HAVE_OPENSSL_ECDH_H #define LWS_HAVE_PIPE2 #define LWS_HAVE_EVENTFD #define LWS_HAVE_PTHREAD_H #define LWS_HAVE_RSA_SET0_KEY -/* #undef LWS_HAVE_RSA_SET0_KEY */ /* #undef LWS_HAVE_RSA_verify_pss_mgf1 */ #define LWS_HAVE_SSL_CTX_get0_certificate #define LWS_HAVE_SSL_CTX_set1_param -/* #undef LWS_HAVE_SSL_CTX_set_ciphersuites */ +#define LWS_HAVE_SSL_CTX_set_ciphersuites #define LWS_HAVE_SSL_EXTRA_CHAIN_CERTS #define LWS_HAVE_SSL_get0_alpn_selected -/* #undef LWS_HAVE_SSL_CTX_EVP_PKEY_new_raw_private_key */ +#define LWS_HAVE_SSL_CTX_EVP_PKEY_new_raw_private_key #define LWS_HAVE_SSL_set_alpn_protos #define LWS_HAVE_SSL_SET_INFO_CALLBACK /* #undef LWS_HAVE__STAT32I64 */ #define LWS_HAVE_STDINT_H /* #undef LWS_HAVE_SYS_CAPABILITY_H */ -/* #undef LWS_HAVE_TLS_CLIENT_METHOD */ #define LWS_HAVE_TLS_CLIENT_METHOD +#define LWS_HAVE_TLSV1_2_CLIENT_METHOD /* #undef LWS_HAVE_UV_VERSION_H */ #define LWS_HAVE_VFORK -/* #undef LWS_HAVE_X509_get_key_usage */ +#define LWS_HAVE_X509_get_key_usage #define LWS_HAVE_X509_VERIFY_PARAM_set1_host #define LWS_LIBRARY_VERSION "4.0.20" #define LWS_LOGGING_BITFIELD_CLEAR 0 @@ -139,7 +134,6 @@ /* #undef LWS_WITH_BORINGSSL */ /* #undef LWS_WITH_CGI */ #define LWS_WITH_CUSTOM_HEADERS -#define LWS_WITH_DEPRECATED_LWS_DLL /* #undef LWS_WITH_DEPRECATED_LWS_DLL */ /* #undef LWS_WITH_DETAILED_LATENCY */ #define LWS_WITH_DIR @@ -187,7 +181,6 @@ /* #undef LWS_WITH_SELFTESTS */ #define LWS_WITH_SEQUENCER /* #undef LWS_WITH_SERVER_STATUS */ -#define LWS_WITH_SMTP /* #undef LWS_WITH_SMTP */ /* #undef LWS_WITH_SOCKS5 */ /* #undef LWS_WITH_STATEFUL_URLDECODE */ diff --git a/lws_config_private.h b/include/lws_config_private.h similarity index 96% rename from lws_config_private.h rename to include/lws_config_private.h index 510cb2aa..9a7d5856 100644 --- a/lws_config_private.h +++ b/include/lws_config_private.h @@ -1,7 +1,7 @@ /* * libwebsockets - small server side websockets and web server implementation * - * Copyright (C) 2021 Huawei Device Co., Ltd. + * Copyright (C) 2021-2022 Huawei Device Co., Ltd. * * Permission is hereby granted, free of charge, to any person obtaining a copy * of this software and associated documentation files (the "Software"), to @@ -21,16 +21,16 @@ * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS * IN THE SOFTWARE. */ - + /* lws_config_private.h.in. Private compilation options. */ #ifndef NDEBUG - #ifndef _DEBUG - #define _DEBUG - #endif + #ifndef _DEBUG + #define _DEBUG + #endif #endif -/* Define to 1 to use CyaSSL as a replacement for OpenSSL. +/* Define to 1 to use CyaSSL as a replacement for OpenSSL. * LWS_OPENSSL_SUPPORT needs to be set also for this to work. */ /* #undef USE_CYASSL */ -- Gitee