Skip to content
代码片段 群组 项目
该项目从 https://github.com/warmcat/libwebsockets 镜像。 Pull mirroring failed .
由于尝试失败次数过多,仓库镜像已暂停,可以由项目维护者或所有者恢复。
上次成功更新
  1. 7月 15, 2020
    • Andy Green's avatar
      sul: LWS_WITH_SUL_DEBUGGING · 30761e76
      Andy Green 创作于
      30761e76
    • Andy Green's avatar
      remove: old esp32 helper pieces · 6762c736
      Andy Green 创作于
      The old esp32 -factory stuff along with the lws support doesn't have a
      future in its old form.  It has users but the ratio of effort to
      contribution is really especially bad.  I haven't updated it for more
      than a year since esp-idf changes broke the original stuff.
      
      Freertos plat is alive and well and getting a lot of new use, ESP-32 is
      supported both there and by modern lws_drivers pieces, including in CI
      on real hardware, any further effort will be invested in that direction
      instead of more vendor api-specific code (outside of wrapper
      implementation).
      
      lws_drivers wraps any SDK apis in generic lws apis such that your code
      just uses those, enabling it to become SDK / SoC / vendor independent.
      Its first implementation is on esp-idf, the low and mid-level features
      that were in the old -factory are already available using that and
      new technologies like lws_struct and Secure Streams.
      6762c736
    • Andy Green's avatar
      remove: generic sessions · 599625be
      Andy Green 创作于
      As far as I know there are no users of this, although it worked
      it's basically unmaintainable due to handling the sql and JSON
      manually.
      
      Gradually better capabilities have appeared in lws, like
      lws_struct abstracting out the sql and JSON, and now generic
      JWT... these have been used in Sai to great effect and displaced
      the only organic would-be user of this.
      
      There is a better path to do this stuff now and no point keeping
      this around.
      599625be
  2. 6月 27, 2020
  3. 6月 11, 2020
    • Andy Green's avatar
      drivers: initial generic gpio and i2c plus bitbang · 15ce46d9
      Andy Green 创作于
      Make a start on generic peripheral and bus drivers to provide
      meta-functionality regardless of platform.
      
      On the one hand this simply provides...
      
       - bitbang i2c on top of esp-idf gpio apis
       - ssd1306 oled chip driver as found on Heltec WB32
       - modifications to the minimal example test for esp32 to use that
      
      ... on the other hand, those capabilities are provided by creating:
      
       - an abstract i2c class object
       - an abstract gpio class object
       - i2c class implementation using the abstract gpio for bitbang
       - an abstract display class object
       - an abstract display state (brightness, animated change,
          on/off/init tracking, autodim after inactive, auto-off /
          blanking after inactive)
      
      ... with the intention, eg, you only have to add a platform
      implementation for the gpio to be able to use the i2c-based
      display drivers and state handling, and i2c bitbang, without
      any other modifications.
      15ce46d9
  4. 6月 07, 2020
    • Andy Green's avatar
      windows: for data exports use explicit extern · 2a772776
      Andy Green 创作于
      LWS_EXTERN needs to be empty for windows when declaring functions in the
      headers.  But for data, it needs the explicit extern otherwise on windows
      or mingw based builds, it thinks we are redeclaring the data each time.
      2a772776
  5. 6月 04, 2020
  6. 6月 03, 2020
  7. 6月 02, 2020
  8. 5月 27, 2020
    • Andy Green's avatar
      cmakelist: Augean Stables refactor · b3131fdf
      Andy Green 创作于
      Establish a new distributed CMake architecture with CMake code related to
      a source directory moving to be in the subdir in its own CMakeLists.txt.
      In particular, there's now one in ./lib which calls through to ones
      further down the directory tree like ./lib/plat/xxx, ./lib/roles/xxx etc.
      
      This cuts the main CMakelists.txt from 98KB -> 33KB, about a 66% reduction,
      and it's much easier to maintain sub-CMakeLists.txt that are in the same
      directory as the sources they manage, and conceal all the details that that
      level.
      
      Child CMakelists.txt become responsible for:
      
       - include_directories() definition (this is not supported by CMake
         directly, it passes it back up via PARENT_SCOPE vars in helper
         macros)
      
       - Addition child CMakeLists.txt inclusion, for example toplevel ->
         role -> role subdir
      
       - Source file addition to the build
      
       - Dependent library path resolution... this is now a private thing
         in the child CMakeLists.txt, it just passes back any adaptations
         to include_directories() and the LIB_LIST without filling the
         parent namespace with the details
      b3131fdf
    • Andy Green's avatar
      esp32: shift to support latest esp-idf · cabe0219
      Andy Green 创作于
      Esp-idf has an improved but still kind of abused cmake-
      based build system now.
      
      If we see ESP_PLATFORM coming as a cmake var, we can know we
      are being built from inside the esp-idf config system.
      
      Leave the existing esp32 arrangements alone but triggered off
      ESP_PLATFORM, adapt to use the cross toolchain file and
      various quirks automatically.
      
      In this way you can build lws a part of your project in a
      much cleaner way.
      
      Prepare a minimal esp32 test app for use in Sai
      
      Adapt .sai.json to build for esp32
      cabe0219
  9. 5月 11, 2020
    • Andy Green's avatar
      CTest: migrate and deprecate existing selftest scripts · 9f1d0193
      Andy Green 创作于
      Replace the bash selftest plumbing with CTest.
      
      To use the selftests, build with -DLWS_WITH_MINIMAL_EXAMPLES=1
      and `CTEST_OUTPUT_ON_FAILURE=1 make test` or just
      `make test`.
      
      To disable tests that require internet access, also give
      -DLWS_CTEST_INTERNET_AVAILABLE=0
      
      Remove travis and appveyor scripts on master.
      
      Remove travis and appveyor decals on README.md.
      9f1d0193
  10. 5月 03, 2020
  11. 4月 25, 2020
  12. 4月 24, 2020
    • Andy Green's avatar
      http: add cmake option for header reduction defeat · 99e778ac
      Andy Green 创作于
      Lws now strips out http headers releated to h2, ws and unusual headers
      based on cmake config settings for those features... it saves some heap
      for the ah and reduces the table size in .rodata.
      
      It's possible code might have some external dependency on the original
      header indexes, but, eg, you don't enable h2 so those indexes are
      optimized with the h2 ones taken out.
      
      This introduces a cmake option "LWS_HTTP_HEADERS_ALL", default-OFF, that
      defeats the header table optimization for compatibility with older
      versions in the case the client software can't be adapted to use the
      lws-exported matching header enums.
      
      You probably don't need this.
      99e778ac
  13. 4月 23, 2020
    • huangkaicheng's avatar
      iOS: detect and avoid net/route.h · 974b65a2
      huangkaicheng 创作于
      LWS builds OK on iOS SDK as unix type plat, except it
      doesn't have net/route.h.
      
      Detect we're building on iOS at CMake and export a
      preprocessor define we can use to snip out the missing
      include.
      974b65a2
  14. 4月 22, 2020
    • Andy Green's avatar
      logs: allow giving log bitfields from cmake to force build or exclusion · d9f793ae
      Andy Green 创作于
      By default this doesn't change any existing logging behaviour at all.
      
      But it allows you to define cmake options to force or force-disable the
      build of individual log levels using new cmake option bitfields
      LWS_LOGGING_BITFIELD_SET and LWS_LOGGING_BITFIELD_CLEAR.
      
      Eg, -DLWS_LOGGING_BITFIELD_SET="(LLL_INFO)" can force INFO log level
      built even in release mode.  -DLWS_LOGGING_BITFIELD_CLEAR="(LLL_NOTICE)"
      will likewise remove NOTICE logging from the build regardless of
      DEBUG or RELEASE mode.
      d9f793ae
  15. 4月 21, 2020
    • Valentin B's avatar
      CMake: Silence CMP0048 warnings · aa0e94ca
      Valentin B 创作于
      When libwebsockets is included as a subdirectory in other projects that rely on a minimum CMake version of 3.x, a CMP0048 policy warning will be raised due to the project not specifying a version in the project call.
      
      This patch silences the warning by explicitly setting the policy within libwebsockets to NEW if it has already been forwarded as such, without any further impact on the behavior of CMake.
      aa0e94ca
    • Andy Green's avatar
      test-server: bump generated selsigned cert to 2048 bits · c4244265
      Andy Green 创作于
      On Ubuntu 20.04 Focal, openssl is configured by default to reject the old 1024-bit keys
      c4244265
  16. 4月 16, 2020
  17. 4月 14, 2020
  18. 4月 11, 2020
  19. 4月 09, 2020
  20. 4月 08, 2020
    • Andy Green's avatar
      windows: import tronkko's dirent.h · d7294a71
      Andy Green 创作于
      Win32 compatible version of dirent.h microsoft just don't seem to be
      able to include themselves.
      
      MIT license, same as lws, link to original github project in the header
      d7294a71
  21. 4月 07, 2020
    • Andy Green's avatar
      windows: pthreads · d3308df4
      Andy Green 创作于
      Add support for external pthreads lib on windows and some docs about how to do.
      
      It can build with LWS_WITH_THREADPOOL and LWS_WITH_MINIMAL_EXAMPLES including the
      pthreads-dependent ones without warnings or errors on windows platform as well with this.
      
      pthreads_t can be anything, including a struct - not a pointer-to-a-struct
      but the struct itself.  These can't be cast to a void * for printing as they can
      on linux, where the base type is a pointer.
      
      Let's fix all the usage of those to determine their own thread index in terms
      of the meaning to the program rather than as a tid.
      d3308df4
  22. 4月 06, 2020
  23. 3月 29, 2020
  24. 3月 28, 2020
    • Andy Green's avatar
      gcc: support -fanalyzer static analysis · e0383324
      Andy Green 创作于
      Starting with gcc 10 (in fedora 32) there's a new static
      analyzer built into gcc you can enable with -fanalyzer.  It
      doesn't slow compilation much, but it's a bit hit and miss,
      it only analyzes each compilation unit standalone so it
      reports issues that can never happen.
      
      Enable it if the option LWS_WITH_FANALYZER is enabled and
      cmake can see the actual compiler supports it.
      e0383324
  25. 3月 26, 2020
    • Andy Green's avatar
      ss: add static policy as a build option · 4cc7f4ed
      Andy Green 创作于
      In some cases devices may be too constrained to handle JSON policies but still
      want to use SS apis and methodology.
      
      This introduces an off-by-default cmake option LWS_WITH_SECURE_STREAMS_STATIC_POLICY_ONLY,
      if enabled the JSON parsing part is excluded and it's assumed the user code
      provides its policy as hardcoded policy structs.
      4cc7f4ed
  26. 3月 21, 2020
  27. 3月 20, 2020
    • Andy Green's avatar
      wolfssl: build fixes · 5c657e08
      Andy Green 创作于
      Solve wolfssl wrappers being defines and header path availability for cmake tests
      5c657e08
  28. 3月 19, 2020
  29. 3月 11, 2020
    • Andy Green's avatar
      captive portal · a60cb84c
      Andy Green 创作于
      Implement Captive Portal detection support in lws, with the actual
      detection happening in platform code hooked up by lws_system_ops_t.
      
      Add an implementation using Secure Streams as well, if the policy
      defines captive_portal_detect streamtype, a SS using that streamtype
      is used to probe if it's behind a captive portal.
      a60cb84c
加载中