Skip to content

Open SSL v 1.1 support #204#233

Open
iddqd13 wants to merge 55 commits intosourcey:masterfrom
iddqd13:openssl_11_support
Open

Open SSL v 1.1 support #204#233
iddqd13 wants to merge 55 commits intosourcey:masterfrom
iddqd13:openssl_11_support

Conversation

@iddqd13
Copy link

@iddqd13 iddqd13 commented Apr 5, 2018

Hello!
I tried to build libsourcey with OpenSSL and got errors. Also saw #204 Issue.
i changed some files according to pocoproject/poco@bfaa161 and OpenSSL Documentation.
Please, Check this Pull Request, maybe it will be useful.
i checked local build - build successfull ( OpenSSL 1.1.0 -stable , gcc 6.3. , Debian Stretch )

P.S. Sorry for my English. I'm learning it yet. Thanks.

auscaster and others added 30 commits November 13, 2017 13:11
fixed dereferencing null pointer
Fixed websocket handshake issue with latest Firefox
Added OpenCV and WebRTC integration sample app
Fix logic error when calling _encoder.init()
Conflicts:
	cmake/FindWebRTC.cmake
	src/webrtc/include/scy/webrtc/audiopacketmodule.h
	src/webrtc/include/scy/webrtc/multiplexmediacapturer.h
	src/webrtc/include/scy/webrtc/peer.h
	src/webrtc/include/scy/webrtc/peermanager.h
	src/webrtc/include/scy/webrtc/streamrecorder.h
	src/webrtc/include/scy/webrtc/util.h
	src/webrtc/include/scy/webrtc/videopacketsource.h
	src/webrtc/src/audiopacketmodule.cpp
	src/webrtc/src/multiplexmediacapturer.cpp
	src/webrtc/src/streamrecorder.cpp
Fix webrtccapturer sample
iddqd13 and others added 10 commits April 5, 2018 16:35
Remove extra const_cast
using internal::api(EVP_MD_CTX_cleanup(_ctxPtr));  instead of internal::api(EVP_MD_CTX_reset(_ctxPtr));
Fixed C++ build error "narrowing conversion"
In newer versions(including webrtc-22215-ab42706) of webrtc methods DataY (and DataU, DataV) moved from VideoFrameBuffer to PlanarYuv8Buffer which is implemented by I420Buffer. To access instance of I420Buffer GetI420() should be called.
Fixed usage of old-version webrtc::VideoFrame
internal::api(EVP_MD_CTX_cleanup(&_ctx));
internal::api(EVP_DigestInit(&_ctx, _md));
#else
internal::api(EVP_MD_CTX_cleanup(_ctxPtr));
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
internal::api(EVP_MD_CTX_cleanup(_ctxPtr));
EVP_MD_CTX_free(_ctxPtr);

For OpenSSL 1.1.1

kapulkin and others added 15 commits April 25, 2020 11:18
use of opaque EVP_MD_CTX
Add macro switch for openssl version
change receivers to share_ptr
build: cmake 3.21+, target-based deps, FetchContent, CMakePresets
build: github actions CI (linux/mac/win, sanitizers, coverage)
build: docker ubuntu 24.04, vcpkg port, cpack

deps: libuv 1.50, openssl 3.x, ffmpeg 6+, llhttp 9.2.1
deps: nlohmann/json 3.11.3, zlib 1.3.1, opencv 4.x find module
deps: removed webrtc, poco, rtaudio, dshow, vendored sources

lang: c++20 minimum, pragma once, enum class, using aliases
lang: smart pointers throughout, noexcept destructors, nodiscard
lang: string_view, structured bindings, constexpr, shared_mutex
lang: std::filesystem, std::chrono, zero raw new/delete in core

security: openssl 3.x migration, tls 1.2 minimum enforced
security: alpn, sni, hostname verification (SSL_set1_host)
security: pacm sha256 checksums, ssl verification, path traversal protection

fix: all assert() replaced with runtime checks (~110 across 30 files)
fix: stream shutdown eof handled as graceful close
fix: websocket rfc 6455 compliance (rsv, opcode, mask, ping/pong/close)
fix: websocket fragmentation and partial frame buffering
fix: ffmpeg 6.x const oformat, missing avcodec include
fix: mediacapture loop seek bug, multiplexencoder thread safety
fix: taskrunner unique_ptr ownership, scheduler memory leaks
fix: stream write backpressure via high water mark
fix: FindFFmpeg.cmake rewritten for pkg-config

test: comprehensive coverage across all 15 modules
test: video encoder/decoder, audio decoder standalone tests
test: http round-trip, websocket frame encoding, pacm json tests
test: timer, ipc, logger, packetstream overflow tests

docs: readme, changelog, build.md, pacm/pluga readmes updated
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

8 participants