Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[QUESTION] Error running the client Viewer Sample: createSocket error #1522

Closed
mehmetcy84 opened this issue Jul 22, 2022 · 13 comments
Closed
Labels
needs-triage question Further information is requested

Comments

@mehmetcy84
Copy link

mehmetcy84 commented Jul 22, 2022

I would like to implement a video/audio viewer in my 64 bit Windows VS2017 project. I have downloaded and built the Windows C SDK. (master branch: SHA-1: ced19d0 Release 1 7 3 (#1473))

Here are the build flags I set while building the SDK:
cmake -G "NMake Makefiles" -DBUILD_TEST=TRUE -DOPENSSL_ROOT_DIR="E:/vcpkg/installed/x64-windows" -DLWS_HAVE_PTHREAD_H=1 -DLWS_EXT_PTHREAD_INCLUDE_DIR="C:\pthread\include" -DLWS_EXT_PTHREAD_LIBRARIES="C:\pthread\lib\x64\libpthreadGC2.a" -DLWS_WITH_MINIMAL_EXAMPLES=1 ..

In order to pass some build errors, I had to disable threadpool usage by:
setting DLWS_WITH_THREADPOOL=0
in
\amazon-kinesis-video-streams-webrtc-sdk-c\CMake\Dependencies\libwebsockets-CMakeLists.txt

I am trying to incorporate the sample viewer program into my Visual Studio 2017 project but having run into some problems, I decided to first run the the built samples using the KVS WebRTC Test Page. But the client fails (logs below). I use the KVS WebRTC Test Page on my macbook(safari) and try to connect to it on my Windows PC using the kvsWebrtcClientViewer sample exe.
The only modification I made onto the stock kvsWebrtcClientViewer sample is to disable trickleICE by setting:

in Samples/Common.c Line 707
STATUS createSampleConfiguration(PCHAR channelName, SIGNALING_CHANNEL_ROLE_TYPE roleType, BOOL trickleIce, BOOL useTurn,PSampleConfiguration* ppSampleConfiguration)
{
trickleIce = FALSE; // ONLY ADDED THIS LINE TO FORCE TRICKLEICE TO FALSE
...

In the Test Page, I have

set the Region, Access Key ID, Secret Key ID, Channel Name
checked "Send Video" and "Send Audio", left "Open Data Channel" unchecked.
checked 1280/720
checked "STUN/TURN"
unchecked "Use Trickle ICE"
clicked "Create Channel"
clicked "Start Master"
On the console, I see
[MASTER] Connected to signaling service

On x64 Native Tools Command Prompt for VS2017, I set the env variables for AWS KEY, SECRET_KEY, REGION and CACERT_PATH.
And ran the command:
kvsWebrtcClientViewer.exe TEST1234
where TEST1234 is the name of the channel I created on the KVS Test Page.

I receive these errors:

2022-07-22 12:46:58 DEBUG createSocket(): setsockopt() NO_SIGNAL failed with errno An invalid argument was supplied.
2022-07-22 12:46:58 DEBUG createSocket(): setsockopt() NO_SIGNAL failed with errno An invalid argument was supplied.
2022-07-22 12:46:58 DEBUG createSocket(): setsockopt() NO_SIGNAL failed with errno An invalid argument was supplied.
2022-07-22 12:46:58 WARN socketBind(): bind() failed for ip address: 169.254.87.231, port 0 with errno The requested address is not valid in its context.
2022-07-22 12:46:58 ERROR createSocketConnection(): operation returned status code: 0x58000018

setsockopt is called with NO_SIGNAL parameter which resolves to 0 and it seems like it might be an invalid value for Windows environment. Do you have any workarounds to fix this issue?
in src\source\Ice\Network.c,
in function: STATUS createSocket(KVS_IP_FAMILY_TYPE familyType, KVS_SOCKET_PROTOCOL protocol, UINT32 sendBufSize, PINT32 pOutSockFd)

if (setsockopt(sockfd, SOL_SOCKET, NO_SIGNAL, &optionValue, SIZEOF(optionValue)) < 0) {
DLOGD("setsockopt() NO_SIGNAL failed with errno %s", getErrorString(getErrorCode()));
}

The entire logs are captured below.

With log level set to 1 (LOG_LEVEL_VERBOSE)
I receive these on the console:

kvsWebrtcClientViewer.exe TEST1234
[KVS Master] NOT Using trickleICE
[KVS Viewer] Created signaling channel TEST1234
2022-07-22 12:46:54 VERBOSE pregenerateCertTimerCallback(): New certificate has been pre-generated and added to the queue
2022-07-22 12:46:54 INFO initKvsWebRtc(): SDK version: ced19d0
[KVS Viewer] KVS WebRTC initialization completed successfully
2022-07-22 12:46:54 VERBOSE createSignalingClientSync(): Creating Signaling Client Sync
2022-07-22 12:46:54 VERBOSE createRetryStrategyForCreatingSignalingClient(): Using exponential backoff retry strategy for creating signaling client
2022-07-22 12:46:54 VERBOSE normalizeExponentialBackoffConfig(): Thread Id [18446744073709551614]. Exponential backoff retry strategy config - maxRetryCount: [14757395255531667456], maxRetryWaitTime: [160000000], retryFactorTime: [10000000], minTimeToResetRetryState: [900000000], jitterType: [14757395255531667457], jitterFactor: [14757395255531667456],
2022-07-22 12:46:54 VERBOSE resetExponentialBackoffRetryState(): Thread Id [18446744073709551614]. Resetting Exponential Backoff State. Last retry system time [0], retry count so far [0], Current system time [16584940146260250]
2022-07-22 12:46:54 VERBOSE exponentialBackoffRetryStrategyWithDefaultConfigCreate(): Created exponential backoff retry strategy state with default configuration.
2022-07-22 12:46:54 ERROR signalingCacheLoadFromFile(): operation returned status code: 0x0000000a
2022-07-22 12:46:54 WARN createSignalingSync(): Failed to load signaling cache from file
2022-07-22 12:46:54 VERBOSE normalizeExponentialBackoffConfig(): Thread Id [18446744073709551614]. Exponential backoff retry strategy config - maxRetryCount: [14757395255531667456], maxRetryWaitTime: [100000000], retryFactorTime: [1000000], minTimeToResetRetryState: [900000000], jitterType: [14757395255531667457], jitterFactor: [14757395255531667456],
2022-07-22 12:46:54 VERBOSE resetExponentialBackoffRetryState(): Thread Id [18446744073709551614]. Resetting Exponential Backoff State. Last retry system time [0], retry count so far [0], Current system time [16584940146277168]
2022-07-22 12:46:54 VERBOSE exponentialBackoffRetryStrategyCreate(): Created exponential backoff retry strategy state with provided retry configuration.
[2022/07/22 15:46:54:6287] N: LWS: 4.2.1-v4.2.2, loglevel 7
[2022/07/22 15:46:54:6302] N: NET CLI H1 H2 WS ConMon IPv6-absent
[2022/07/22 15:46:54:6360] N: ++ [wsi|0|pipe] (1)
[2022/07/22 15:46:54:6379] N: ++ [vh|0|default||-1] (1)
[2022/07/22 15:46:54:6469] N: lws_plat_vhost_tls_client_ctx_init: Imported 52 certs from plat store
2022-07-22 12:46:54 VERBOSE lwsHttpCallbackRoutine(): HTTPS callback with reason 21
2022-07-22 12:46:54 VERBOSE signalingClientStateChanged(): Signaling client state changed to 1 - 'New'
2022-07-22 12:46:54 VERBOSE stepStateMachine(): State Machine - Current state: 0x0000000000000001, Next state: 0x0000000000000002, Current local state retry count [0], Max local state retry count [1], State transition wait time [0] ms
2022-07-22 12:46:54 VERBOSE signalingClientStateChanged(): Signaling client state changed to 2 - 'Get Security Credentials'
[KVS Viewer] Signaling client created successfully
2022-07-22 12:46:54 VERBOSE signalingClientFetchSync(): Signaling Client Fetch Sync
2022-07-22 12:46:54 VERBOSE createRetryStrategyForCreatingSignalingClient(): Using exponential backoff retry strategy for creating signaling client
2022-07-22 12:46:54 VERBOSE normalizeExponentialBackoffConfig(): Thread Id [18446744073709551614]. Exponential backoff retry strategy config - maxRetryCount: [14757395255531667456], maxRetryWaitTime: [160000000], retryFactorTime: [10000000], minTimeToResetRetryState: [900000000], jitterType: [14757395255531667457], jitterFactor: [14757395255531667456],
2022-07-22 12:46:54 VERBOSE resetExponentialBackoffRetryState(): Thread Id [18446744073709551614]. Resetting Exponential Backoff State. Last retry system time [0], retry count so far [0], Current system time [16584940146549298]
2022-07-22 12:46:54 VERBOSE exponentialBackoffRetryStrategyWithDefaultConfigCreate(): Created exponential backoff retry strategy state with default configuration.
2022-07-22 12:46:54 VERBOSE stepStateMachine(): State Machine - Current state: 0x0000000000000002, Next state: 0x0000000000000004, Current local state retry count [0], Max local state retry count [1], State transition wait time [0] ms
2022-07-22 12:46:54 VERBOSE signalingClientStateChanged(): Signaling client state changed to 3 - 'Describe Channel'
2022-07-22 12:46:54 VERBOSE lwsCompleteSync(): Perform secure synchronous call for URL: https://kinesisvideo.us-east-2.amazonaws.com/describeSignalingChannel
2022-07-22 12:46:54 VERBOSE lwsHttpCallbackRoutine(): HTTPS callback with reason 27
2022-07-22 12:46:54 VERBOSE lwsWssCallbackRoutine(): WSS callback with reason 27
2022-07-22 12:46:54 VERBOSE lwsHttpCallbackRoutine(): HTTPS callback with reason 85
[2022/07/22 15:46:54:6569] N: ++ [wsicli|0|POST/h1/kinesisvideo.us-east-2.amazonaws.com] (1)
[2022/07/22 15:46:54:6639] W: lws_plat_set_socket_options_ip: not implemented on windows platform
2022-07-22 12:46:54 VERBOSE lwsHttpCallbackRoutine(): HTTPS callback with reason 105
2022-07-22 12:46:54 VERBOSE lwsHttpCallbackRoutine(): HTTPS callback with reason 19
2022-07-22 12:46:54 VERBOSE lwsHttpCallbackRoutine(): HTTPS callback with reason 31
2022-07-22 12:46:54 VERBOSE lwsHttpCallbackRoutine(): HTTPS callback with reason 29
2022-07-22 12:46:54 VERBOSE lwsHttpCallbackRoutine(): HTTPS callback with reason 71
2022-07-22 12:46:54 VERBOSE lwsWssCallbackRoutine(): WSS callback with reason 71
2022-07-22 12:46:54 VERBOSE lwsHttpCallbackRoutine(): HTTPS callback with reason 58
2022-07-22 12:46:54 VERBOSE lwsHttpCallbackRoutine(): HTTPS callback with reason 58
2022-07-22 12:46:54 VERBOSE lwsHttpCallbackRoutine(): HTTPS callback with reason 58
2022-07-22 12:46:55 VERBOSE lwsHttpCallbackRoutine(): HTTPS callback with reason 58
2022-07-22 12:46:55 VERBOSE lwsHttpCallbackRoutine(): HTTPS callback with reason 24
2022-07-22 12:46:55 DEBUG lwsHttpCallbackRoutine(): Client append handshake header
2022-07-22 12:46:55 VERBOSE lwsHttpCallbackRoutine(): Appending header - Authorization: AWS4-HMAC-SHA256 Credential=[PRIVATE-DATA]/20220722/us-east-2/kinesisvideo/aws4_request, SignedHeaders=host;user-agent;x-amz-date, Signature=5db07e4efb4c52e2e271d878bad59a520e684200abc786d9c1d1a77b25dd99ae
2022-07-22 12:46:55 VERBOSE lwsHttpCallbackRoutine(): Appending header - content-length: 30
2022-07-22 12:46:55 VERBOSE lwsHttpCallbackRoutine(): Appending header - content-type: application/json
2022-07-22 12:46:55 VERBOSE lwsHttpCallbackRoutine(): Appending header - user-agent: AWS-SDK-KVS/3.0.0 MSVC/1916 Windows/6.2.9200 AMD64
2022-07-22 12:46:55 VERBOSE lwsHttpCallbackRoutine(): Appending header - X-Amz-Date: 20220722T124654Z
2022-07-22 12:46:55 VERBOSE lwsHttpCallbackRoutine(): HTTPS callback with reason 57
2022-07-22 12:46:55 DEBUG lwsHttpCallbackRoutine(): Sending the body {
"ChannelName": "TEST1234"
}, size 30
2022-07-22 12:46:55 VERBOSE lwsHttpCallbackRoutine(): HTTPS callback with reason 2
2022-07-22 12:46:55 VERBOSE lwsHttpCallbackRoutine(): HTTPS callback with reason 44
2022-07-22 12:46:55 DEBUG lwsHttpCallbackRoutine(): Connected with server response: 200
2022-07-22 12:46:55 VERBOSE lwsHttpCallbackRoutine(): Date Header Returned By Server: Fri, 22 Jul 2022 12:46:56 GMT
2022-07-22 12:46:55 VERBOSE lwsHttpCallbackRoutine(): HTTPS callback with reason 46
2022-07-22 12:46:55 DEBUG lwsHttpCallbackRoutine(): Received client http
2022-07-22 12:46:55 VERBOSE lwsHttpCallbackRoutine(): HTTPS callback with reason 48
2022-07-22 12:46:55 DEBUG lwsHttpCallbackRoutine(): Received client http read: 334 bytes
2022-07-22 12:46:55 VERBOSE lwsHttpCallbackRoutine(): Received client http read response: {"ChannelInfo":{"ChannelARN":"arn:aws:kinesisvideo:us-east-2:420029824569:channel/TEST1234/1658274591195","ChannelName":"TEST1234","ChannelStatus":"ACTIVE","ChannelType":"SINGLE_MASTER","CreationTime":1.658274591195E9,"FullMeshConfiguration":null,"SingleMasterConfiguration":{"MessageTtlSeconds":60},"Version":"GSpwwII8z5BM75QZKE6r"}}
2022-07-22 12:46:55 VERBOSE lwsHttpCallbackRoutine(): HTTPS callback with reason 47
2022-07-22 12:46:55 DEBUG lwsHttpCallbackRoutine(): Http client completed
2022-07-22 12:46:55 VERBOSE lwsHttpCallbackRoutine(): HTTPS callback with reason 45
2022-07-22 12:46:55 DEBUG lwsHttpCallbackRoutine(): Client http closed
2022-07-22 12:46:55 VERBOSE lwsHttpCallbackRoutine(): HTTPS callback with reason 30
[2022/07/22 15:46:55:4066] N: -- [wsicli|0|POST/h1/kinesisvideo.us-east-2.amazonaws.com] (0) 749.683ms
2022-07-22 12:46:55 VERBOSE stepStateMachine(): State Machine - Current state: 0x0000000000000004, Next state: 0x0000000000000010, Current local state retry count [0], Max local state retry count [1], State transition wait time [0] ms
2022-07-22 12:46:55 VERBOSE signalingClientStateChanged(): Signaling client state changed to 5 - 'Get Channel Endpoint'
2022-07-22 12:46:55 VERBOSE lwsCompleteSync(): Perform secure synchronous call for URL: https://kinesisvideo.us-east-2.amazonaws.com/getSignalingChannelEndpoint
2022-07-22 12:46:55 VERBOSE lwsHttpCallbackRoutine(): HTTPS callback with reason 85
[2022/07/22 15:46:55:4214] N: ++ [wsicli|1|POST/h1/kinesisvideo.us-east-2.amazonaws.com] (1)
[2022/07/22 15:46:55:4267] W: lws_plat_set_socket_options_ip: not implemented on windows platform
2022-07-22 12:46:55 VERBOSE lwsHttpCallbackRoutine(): HTTPS callback with reason 105
2022-07-22 12:46:55 VERBOSE lwsHttpCallbackRoutine(): HTTPS callback with reason 19
2022-07-22 12:46:55 VERBOSE pregenerateCertTimerCallback(): New certificate has been pre-generated and added to the queue
2022-07-22 12:46:55 VERBOSE lwsHttpCallbackRoutine(): HTTPS callback with reason 29
2022-07-22 12:46:55 VERBOSE lwsHttpCallbackRoutine(): HTTPS callback with reason 58
2022-07-22 12:46:55 VERBOSE lwsHttpCallbackRoutine(): HTTPS callback with reason 58
2022-07-22 12:46:55 VERBOSE lwsHttpCallbackRoutine(): HTTPS callback with reason 58
2022-07-22 12:46:55 VERBOSE lwsHttpCallbackRoutine(): HTTPS callback with reason 58
2022-07-22 12:46:55 VERBOSE lwsHttpCallbackRoutine(): HTTPS callback with reason 24
2022-07-22 12:46:55 DEBUG lwsHttpCallbackRoutine(): Client append handshake header
2022-07-22 12:46:55 VERBOSE lwsHttpCallbackRoutine(): Appending header - Authorization: AWS4-HMAC-SHA256 Credential=[PRIVATE-DATA]/20220722/us-east-2/kinesisvideo/aws4_request, SignedHeaders=host;user-agent;x-amz-date, Signature=ed5fec9181df410b1e57d05eee0e10ef3447485bb4348c011d7a5f852bf7aacd
2022-07-22 12:46:55 VERBOSE lwsHttpCallbackRoutine(): Appending header - content-length: 198
2022-07-22 12:46:55 VERBOSE lwsHttpCallbackRoutine(): Appending header - content-type: application/json
2022-07-22 12:46:55 VERBOSE lwsHttpCallbackRoutine(): Appending header - user-agent: AWS-SDK-KVS/3.0.0 MSVC/1916 Windows/6.2.9200 AMD64
2022-07-22 12:46:55 VERBOSE lwsHttpCallbackRoutine(): Appending header - X-Amz-Date: 20220722T124655Z
2022-07-22 12:46:55 VERBOSE lwsHttpCallbackRoutine(): HTTPS callback with reason 57
2022-07-22 12:46:55 DEBUG lwsHttpCallbackRoutine(): Sending the body {
"ChannelARN": "arn:aws:kinesisvideo:us-east-2:420029824569:channel/TEST1234/1658274591195",
"SingleMasterChannelEndpointConfiguration": {
"Protocols": ["WSS", "HTTPS"],
"Role": "VIEWER"
}
}, size 198
2022-07-22 12:46:56 VERBOSE lwsHttpCallbackRoutine(): HTTPS callback with reason 2
2022-07-22 12:46:56 VERBOSE lwsHttpCallbackRoutine(): HTTPS callback with reason 44
2022-07-22 12:46:56 DEBUG lwsHttpCallbackRoutine(): Connected with server response: 200
2022-07-22 12:46:56 VERBOSE lwsHttpCallbackRoutine(): Date Header Returned By Server: Fri, 22 Jul 2022 12:46:57 GMT
2022-07-22 12:46:56 VERBOSE lwsHttpCallbackRoutine(): HTTPS callback with reason 46
2022-07-22 12:46:56 DEBUG lwsHttpCallbackRoutine(): Received client http
2022-07-22 12:46:56 VERBOSE lwsHttpCallbackRoutine(): HTTPS callback with reason 48
2022-07-22 12:46:56 DEBUG lwsHttpCallbackRoutine(): Received client http read: 218 bytes
2022-07-22 12:46:56 VERBOSE lwsHttpCallbackRoutine(): Received client http read response: {"ResourceEndpointList":[{"Protocol":"HTTPS","ResourceEndpoint":"https://r-b0356e67.kinesisvideo.us-east-2.amazonaws.com"},{"Protocol":"WSS","ResourceEndpoint":"wss://v-dc297268.kinesisvideo.us-east-2.amazonaws.com"}]}
2022-07-22 12:46:56 VERBOSE lwsHttpCallbackRoutine(): HTTPS callback with reason 47
2022-07-22 12:46:56 DEBUG lwsHttpCallbackRoutine(): Http client completed
2022-07-22 12:46:56 VERBOSE lwsHttpCallbackRoutine(): HTTPS callback with reason 45
2022-07-22 12:46:56 DEBUG lwsHttpCallbackRoutine(): Client http closed
2022-07-22 12:46:56 VERBOSE lwsHttpCallbackRoutine(): HTTPS callback with reason 30
[2022/07/22 15:46:56:1369] N: -- [wsicli|1|POST/h1/kinesisvideo.us-east-2.amazonaws.com] (0) 715.510ms
2022-07-22 12:46:56 ERROR signalingCacheSaveToFile(): operation returned status code: 0x0000000a
2022-07-22 12:46:56 WARN getChannelEndpoint(): Failed to save signaling cache to file
2022-07-22 12:46:56 VERBOSE stepStateMachine(): State Machine - Current state: 0x0000000000000010, Next state: 0x0000000000000020, Current local state retry count [0], Max local state retry count [1], State transition wait time [0] ms
2022-07-22 12:46:56 VERBOSE signalingClientStateChanged(): Signaling client state changed to 6 - 'Get ICE Server Configuration'
2022-07-22 12:46:56 VERBOSE lwsCompleteSync(): Perform secure synchronous call for URL: https://r-b0356e67.kinesisvideo.us-east-2.amazonaws.com/v1/get-ice-server-config
2022-07-22 12:46:56 VERBOSE lwsHttpCallbackRoutine(): HTTPS callback with reason 85
[2022/07/22 15:46:56:1515] N: ++ [wsicli|2|POST/h1/r-b0356e67.kinesisvideo.us-east-2.amazonaws.] (1)
[2022/07/22 15:46:56:1576] W: lws_plat_set_socket_options_ip: not implemented on windows platform
2022-07-22 12:46:56 VERBOSE lwsHttpCallbackRoutine(): HTTPS callback with reason 105
2022-07-22 12:46:56 VERBOSE lwsHttpCallbackRoutine(): HTTPS callback with reason 19
2022-07-22 12:46:56 VERBOSE lwsHttpCallbackRoutine(): HTTPS callback with reason 29
2022-07-22 12:46:56 VERBOSE lwsHttpCallbackRoutine(): HTTPS callback with reason 58
2022-07-22 12:46:56 VERBOSE lwsHttpCallbackRoutine(): HTTPS callback with reason 58
2022-07-22 12:46:56 VERBOSE lwsHttpCallbackRoutine(): HTTPS callback with reason 58
2022-07-22 12:46:56 VERBOSE lwsHttpCallbackRoutine(): HTTPS callback with reason 58
2022-07-22 12:46:56 VERBOSE pregenerateCertTimerCallback(): New certificate has been pre-generated and added to the queue
2022-07-22 12:46:56 VERBOSE lwsHttpCallbackRoutine(): HTTPS callback with reason 24
2022-07-22 12:46:56 DEBUG lwsHttpCallbackRoutine(): Client append handshake header
2022-07-22 12:46:56 VERBOSE lwsHttpCallbackRoutine(): Appending header - Authorization: AWS4-HMAC-SHA256 Credential=[PRIVATE-DATA]/20220722/us-east-2/kinesisvideo/aws4_request, SignedHeaders=host;user-agent;x-amz-date, Signature=e90c99ea98b9742d33a03549ff47002159a2806c3e517b7f70a2f1aa52904f7d
2022-07-22 12:46:56 VERBOSE lwsHttpCallbackRoutine(): Appending header - content-length: 152
2022-07-22 12:46:56 VERBOSE lwsHttpCallbackRoutine(): Appending header - content-type: application/json
2022-07-22 12:46:56 VERBOSE lwsHttpCallbackRoutine(): Appending header - user-agent: AWS-SDK-KVS/3.0.0 MSVC/1916 Windows/6.2.9200 AMD64
2022-07-22 12:46:56 VERBOSE lwsHttpCallbackRoutine(): Appending header - X-Amz-Date: 20220722T124656Z
2022-07-22 12:46:56 VERBOSE lwsHttpCallbackRoutine(): HTTPS callback with reason 57
2022-07-22 12:46:56 DEBUG lwsHttpCallbackRoutine(): Sending the body {
"ChannelARN": "arn:aws:kinesisvideo:us-east-2:420029824569:channel/TEST1234/1658274591195",
"ClientId": "ConsumerViewer_23046",
"Service": "TURN"
}, size 152
2022-07-22 12:46:56 VERBOSE lwsHttpCallbackRoutine(): HTTPS callback with reason 2
2022-07-22 12:46:56 VERBOSE lwsHttpCallbackRoutine(): HTTPS callback with reason 44
2022-07-22 12:46:56 DEBUG lwsHttpCallbackRoutine(): Connected with server response: 200
2022-07-22 12:46:56 VERBOSE lwsHttpCallbackRoutine(): Date Header Returned By Server: Fri, 22 Jul 2022 12:46:59 GMT
2022-07-22 12:46:56 VERBOSE lwsHttpCallbackRoutine(): HTTPS callback with reason 46
2022-07-22 12:46:56 DEBUG lwsHttpCallbackRoutine(): Received client http
2022-07-22 12:46:56 VERBOSE lwsHttpCallbackRoutine(): HTTPS callback with reason 48
2022-07-22 12:46:56 DEBUG lwsHttpCallbackRoutine(): Received client http read: 481 bytes
2022-07-22 12:46:56 VERBOSE lwsHttpCallbackRoutine(): Received client http read response: {"IceServerList":[{"Password":[PRIVATE],"Ttl":300,"Uris":["turn:3-144-2-67.t-c01cb9af.kinesisvideo.us-east-2.amazonaws.com:443?transport=udp","turns:3-144-2-67.t-c01cb9af.kinesisvideo.us-east-2.amazonaws.com:443?transport=udp","turns:3-144-2-67.t-c01cb9af.kinesisvideo.us-east-2.amazonaws.com:443?transport=tcp"],"Username":[PRIVATE]}]}
2022-07-22 12:46:56 VERBOSE lwsHttpCallbackRoutine(): HTTPS callback with reason 47
2022-07-22 12:46:56 DEBUG lwsHttpCallbackRoutine(): Http client completed
2022-07-22 12:46:56 VERBOSE lwsHttpCallbackRoutine(): HTTPS callback with reason 45
2022-07-22 12:46:56 DEBUG lwsHttpCallbackRoutine(): Client http closed
2022-07-22 12:46:56 VERBOSE lwsHttpCallbackRoutine(): HTTPS callback with reason 30
[2022/07/22 15:46:56:8871] N: -- [wsicli|2|POST/h1/r-b0356e67.kinesisvideo.us-east-2.amazonaws.] (0) 735.534ms
2022-07-22 12:46:56 VERBOSE stepStateMachine(): State Machine - Current state: 0x0000000000000020, Next state: 0x0000000000000040, Current local state retry count [0], Max local state retry count [0], State transition wait time [0] ms
2022-07-22 12:46:56 VERBOSE signalingClientStateChanged(): Signaling client state changed to 7 - 'Ready'
2022-07-22 12:46:56 VERBOSE signalingClientConnectSync(): Signaling Client Connect Sync
2022-07-22 12:46:56 VERBOSE stepStateMachine(): State Machine - Current state: 0x0000000000000040, Next state: 0x0000000000000080, Current local state retry count [0], Max local state retry count [0], State transition wait time [0] ms
2022-07-22 12:46:56 VERBOSE signalingClientStateChanged(): Signaling client state changed to 8 - 'Connecting'
2022-07-22 12:46:56 VERBOSE lwsCompleteSync(): Perform secure synchronous call for URL: wss://v-dc297268.kinesisvideo.us-east-2.amazonaws.com?X-Amz-ChannelARN=arn:aws:kinesisvideo:us-east-2:420029824569:channel/TEST1234/1658274591195&X-Amz-ClientId=ConsumerViewer_23046
2022-07-22 12:46:56 VERBOSE lwsWssCallbackRoutine(): WSS callback with reason 85
[2022/07/22 15:46:56:8959] N: ++ [wsicli|3|WS/h1/v-dc297268.kinesisvideo.us-east-2.amazonaws.co] (1)
[2022/07/22 15:46:57:0279] W: lws_plat_set_socket_options_ip: not implemented on windows platform
2022-07-22 12:46:57 VERBOSE lwsWssCallbackRoutine(): WSS callback with reason 105
2022-07-22 12:46:57 VERBOSE lwsWssCallbackRoutine(): WSS callback with reason 19
2022-07-22 12:46:57 VERBOSE lwsWssCallbackRoutine(): WSS callback with reason 29
2022-07-22 12:46:57 VERBOSE lwsHttpCallbackRoutine(): HTTPS callback with reason 58
2022-07-22 12:46:57 VERBOSE lwsHttpCallbackRoutine(): HTTPS callback with reason 58
2022-07-22 12:46:57 VERBOSE lwsHttpCallbackRoutine(): HTTPS callback with reason 58
2022-07-22 12:46:57 VERBOSE lwsHttpCallbackRoutine(): HTTPS callback with reason 58
2022-07-22 12:46:57 VERBOSE lwsWssCallbackRoutine(): WSS callback with reason 24
2022-07-22 12:46:57 VERBOSE lwsWssCallbackRoutine(): WSS callback with reason 44
2022-07-22 12:46:57 VERBOSE lwsWssCallbackRoutine(): WSS callback with reason 2
2022-07-22 12:46:57 VERBOSE lwsWssCallbackRoutine(): WSS callback with reason 3
2022-07-22 12:46:57 DEBUG lwsWssCallbackRoutine(): Connection established
2022-07-22 12:46:57 VERBOSE stepStateMachine(): State Machine - Current state: 0x0000000000000080, Next state: 0x0000000000000100, Current local state retry count [0], Max local state retry count [0], State transition wait time [0] ms
2022-07-22 12:46:57 VERBOSE signalingClientStateChanged(): Signaling client state changed to 9 - 'Connected'
[KVS Viewer] Signaling client connection to socket established
2022-07-22 12:46:57 VERBOSE signalingClientGetIceConfigInfoCount(): Signaling Client Get ICE Config Info Count
2022-07-22 12:46:57 DEBUG refreshIceConfiguration(): Refreshing the ICE Server Configuration
2022-07-22 12:46:57 VERBOSE signalingClientGetIceConfigInfo(): Signaling Client Get ICE Config Info
2022-07-22 12:46:57 DEBUG refreshIceConfiguration(): Refreshing the ICE Server Configuration
2022-07-22 12:46:57 DEBUG iceAgentValidateKvsRtcConfig():
iceLocalCandidateGatheringTimeout: 10000 ms
iceConnectionCheckTimeout: 10000 ms
iceCandidateNominationTimeout: 10000 ms
iceConnectionCheckPollingInterval: 50 ms
2022-07-22 12:46:57 DEBUG initializePeerConnection(): time taken to create peer connection 227 ms
[KVS Viewer] Creating streaming session...completed
2022-07-22 12:46:58 DEBUG createSocket(): setsockopt() NO_SIGNAL failed with errno An invalid argument was supplied.
2022-07-22 12:46:58 DEBUG createSocket(): setsockopt() NO_SIGNAL failed with errno An invalid argument was supplied.
2022-07-22 12:46:58 DEBUG createSocket(): setsockopt() NO_SIGNAL failed with errno An invalid argument was supplied.
2022-07-22 12:46:58 WARN socketBind(): bind() failed for ip address: 169.254.87.231, port 0 with errno The requested address is not valid in its context.
2022-07-22 12:46:58 ERROR createSocketConnection(): operation returned status code: 0x58000018
2022-07-22 12:46:58 DEBUG createSocket(): setsockopt() NO_SIGNAL failed with errno An invalid argument was supplied.
2022-07-22 12:46:58 WARN socketBind(): bind() failed for ip address: 169.254.254.116, port 0 with errno The requested address is not valid in its context.
2022-07-22 12:46:58 ERROR createSocketConnection(): operation returned status code: 0x58000018
2022-07-22 12:46:58 DEBUG createSocket(): setsockopt() NO_SIGNAL failed with errno An invalid argument was supplied.
2022-07-22 12:46:58 WARN socketBind(): bind() failed for ip address: 169.254.252.37, port 0 with errno The requested address is not valid in its context.
2022-07-22 12:46:58 ERROR createSocketConnection(): operation returned status code: 0x58000018
2022-07-22 12:46:58 DEBUG createSocket(): setsockopt() NO_SIGNAL failed with errno An invalid argument was supplied.
2022-07-22 12:46:58 DEBUG createSocket(): setsockopt() NO_SIGNAL failed with errno An invalid argument was supplied.
2022-07-22 12:46:58 DEBUG createSocket(): setsockopt() NO_SIGNAL failed with errno An invalid argument was supplied.
2022-07-22 12:46:58 DEBUG createSocket(): setsockopt() NO_SIGNAL failed with errno An invalid argument was supplied.
2022-07-22 12:46:58 DEBUG createSocket(): setsockopt() NO_SIGNAL failed with errno An invalid argument was supplied.
2022-07-22 12:46:58 DEBUG createSocket(): setsockopt() NO_SIGNAL failed with errno An invalid argument was supplied.
2022-07-22 12:46:58 DEBUG createSocket(): setsockopt() NO_SIGNAL failed with errno An unknown, invalid, or unsupported option or level was specified in a getsockopt or setsockopt call.
[KVS Viewer] Completed setting local description
[KVS Viewer] Non trickle ice. Wait for Candidate collection to complete
2022-07-22 12:46:58 WARN connectionListenerReceiveDataRoutine(): poll() failed with errno An invalid argument was supplied.
2022-07-22 12:46:58 WARN connectionListenerReceiveDataRoutine(): poll() failed with errno An invalid argument was supplied.
2022-07-22 12:46:58 WARN connectionListenerReceiveDataRoutine(): poll() failed with errno An invalid argument was supplied.
2022-07-22 12:46:58 WARN connectionListenerReceiveDataRoutine(): poll() failed with errno An invalid argument was supplied.
2022-07-22 12:46:58 WARN connectionListenerReceiveDataRoutine(): poll() failed with errno An invalid argument was supplied.
2022-07-22 12:46:58 WARN connectionListenerReceiveDataRoutine(): poll() failed with errno An invalid argument was supplied.
2022-07-22 12:46:58 WARN connectionListenerReceiveDataRoutine(): poll() failed with errno An invalid argument was supplied.
2022-07-22 12:46:58 DEBUG turnConnectionStepState(): TurnConnection state changed from TURN_STATE_NEW to TURN_STATE_CHECK_SOCKET_CONNECTION
2022-07-22 12:46:58 DEBUG turnConnectionStepState(): TurnConnection state changed from TURN_STATE_NEW to TURN_STATE_CHECK_SOCKET_CONNECTION
2022-07-22 12:46:58 WARN connectionListenerReceiveDataRoutine(): poll() failed with errno An invalid argument was supplied.
2022-07-22 12:46:58 DEBUG socketSendDataWithRetry(): sendto() failed with errno A socket operation was attempted to an unreachable network.
2022-07-22 12:46:58 DEBUG socketSendDataWithRetry(): Close socket 588
2022-07-22 12:46:58 DEBUG socketSendDataWithRetry(): Failed to send data. Bytes sent 0. Data len 28. Retry count 0
2022-07-22 12:46:58 DEBUG socketSendDataWithRetry(): Warning: Send data failed with 0x5800001a
2022-07-22 12:46:58 ERROR iceUtilsSendData(): operation returned status code: 0x5800001a
2022-07-22 12:46:58 ERROR iceUtilsSendStunPacket(): operation returned status code: 0x5800001a
2022-07-22 12:46:58 WARN connectionListenerReceiveDataRoutine(): poll() failed with errno An invalid argument was supplied.
2022-07-22 12:46:58 WARN connectionListenerReceiveDataRoutine(): poll() failed with errno An invalid argument was supplied.
2022-07-22 12:46:58 WARN connectionListenerReceiveDataRoutine(): poll() failed with errno An invalid argument was supplied.
2022-07-22 12:46:58 WARN connectionListenerReceiveDataRoutine(): poll() failed with errno An invalid argument was supplied.
2022-07-22 12:46:58 WARN connectionListenerReceiveDataRoutine(): poll() failed with errno An invalid argument was supplied.
2022-07-22 12:46:58 WARN connectionListenerReceiveDataRoutine(): poll() failed with errno An invalid argument was supplied.
2022-07-22 12:46:58 WARN connectionListenerReceiveDataRoutine(): poll() failed with errno An invalid argument was supplied.
2022-07-22 12:46:58 WARN connectionListenerReceiveDataRoutine(): poll() failed with errno An invalid argument was supplied.
2022-07-22 12:46:58 WARN connectionListenerReceiveDataRoutine(): poll() failed with errno An invalid argument was supplied.
2022-07-22 12:46:58 WARN iceAgentSendStunPacket(): iceUtilsSendStunPacket failed with 0x5800001a
2022-07-22 12:46:58 WARN connectionListenerReceiveDataRoutine(): poll() failed with errno An invalid argument was supplied.
2022-07-22 12:46:58 DEBUG socketSendDataWithRetry(): sendto() failed with errno A socket operation was attempted to an unreachable network.
2022-07-22 12:46:58 DEBUG socketSendDataWithRetry(): Close socket 580
2022-07-22 12:46:58 DEBUG socketSendDataWithRetry(): Failed to send data. Bytes sent 0. Data len 28. Retry count 0
2022-07-22 12:46:58 DEBUG socketSendDataWithRetry(): Warning: Send data failed with 0x5800001a
2022-07-22 12:46:58 ERROR iceUtilsSendData(): operation returned status code: 0x5800001a
2022-07-22 12:46:58 WARN connectionListenerReceiveDataRoutine(): poll() failed with errno An invalid argument was supplied.
2022-07-22 12:46:58 ERROR iceUtilsSendStunPacket(): operation returned status code: 0x5800001a
2022-07-22 12:46:58 WARN connectionListenerReceiveDataRoutine(): poll() failed with errno An invalid argument was supplied.
2022-07-22 12:46:58 WARN iceAgentSendStunPacket(): iceUtilsSendStunPacket failed with 0x5800001a
2022-07-22 12:46:58 WARN connectionListenerReceiveDataRoutine(): poll() failed with errno An invalid argument was supplied.
2022-07-22 12:46:58 DEBUG iceAgentLogNewCandidate(): New local ice candidate discovered. Id: o+SlZj8/q. Ip: 127.0.0.1:54130. Type: host. Protocol: udp.
2022-07-22 12:46:58 WARN connectionListenerReceiveDataRoutine(): poll() failed with errno An invalid argument was supplied.
2022-07-22 12:46:58 DEBUG iceAgentLogNewCandidate(): New local ice candidate discovered. Id: sMwrymhYu. Ip: 0000:0000:0000:0000:0000:0000:0000:0001:54129. Type: host. Protocol: udp.
2022-07-22 12:46:58 WARN connectionListenerReceiveDataRoutine(): poll() failed with errno An invalid argument was supplied.
2022-07-22 12:46:58 DEBUG iceAgentLogNewCandidate(): New local ice candidate discovered. Id: +0Af9Vlsd. Ip: 192.168.1.104:54128. Type: host. Protocol: udp.
2022-07-22 12:46:58 WARN connectionListenerReceiveDataRoutine(): poll() failed with errno An invalid argument was supplied.
2022-07-22 12:46:58 DEBUG iceAgentLogNewCandidate(): New local ice candidate discovered. Id: Bqnz+1PUO. Ip: 192.168.56.1:54127. Type: host. Protocol: udp.
2022-07-22 12:46:58 WARN connectionListenerReceiveDataRoutine(): poll() failed with errno An invalid argument was supplied.
2022-07-22 12:46:58 WARN connectionListenerReceiveDataRoutine(): poll() failed with errno An invalid argument was supplied.
2022-07-22 12:46:58 WARN connectionListenerReceiveDataRoutine(): poll() failed with errno An invalid argument was supplied.

@mehmetcy84 mehmetcy84 added needs-triage question Further information is requested labels Jul 22, 2022
@niyatim23
Copy link
Contributor

Hi @mehmetcy84, the error codes from your logs mean the following:

  1. 0x58000018: STATUS_BINDING_SOCKET_FAILED
  2. 0x5800001a: STATUS_SEND_DATA_FAILED
  3. 0x0000000a: STATUS_READ_FILE_FAILED
    I think the first two errors happen because of issues with the connection. It could have been caused due to DLWS_WITH_THREADPOOL=0 in libwebsockets. The third error can be caused due to missing permissions to create / read files in a folder

@LeeAkinobu
Copy link

LeeAkinobu commented Jul 25, 2022

Hi @mehmetcy84, I'm also facing the same errors while trying to run client Viewer Sample on Windows 11 64bit + VS2017. I'm trying with "-DLWS_WITH_THREADPOOL=1" at libwebsockets building, but it does not ease the problem.

createSocket(): setsockopt() NO_SIGNAL failed with errno An invalid argument was supplied.

This error does not affect its behavior since it has no actual effect, so we can just ignore it.

Critical point is that it fails to send data at this point:

2022-07-22 12:46:58 DEBUG socketSendDataWithRetry(): sendto() failed with errno A socket operation was attempted to an unreachable network.
2022-07-22 12:46:58 DEBUG socketSendDataWithRetry(): Close socket 588
2022-07-22 12:46:58 DEBUG socketSendDataWithRetry(): Failed to send data. Bytes sent 0. Data len 28. Retry count 0

It seems that the first data sending part blocks inside libwebsocket waiting for a signal. Can anyone have a solution for this?

@mehmetcy84
Copy link
Author

Hi @mehmetcy84, I'm also facing the same errors while trying to run client Viewer Sample on Windows 11 64bit + VS2017. I'm trying with "-DLWS_WITH_THREADPOOL=1" at libwebsockets building, but it does not ease the problem.

createSocket(): setsockopt() NO_SIGNAL failed with errno An invalid argument was supplied.

This error does not affect its behavior since it has no actual effect, so we can just ignore it.

Critical point is that it fails to send data at this point:

2022-07-22 12:46:58 DEBUG socketSendDataWithRetry(): sendto() failed with errno A socket operation was attempted to an unreachable network.
2022-07-22 12:46:58 DEBUG socketSendDataWithRetry(): Close socket 588
2022-07-22 12:46:58 DEBUG socketSendDataWithRetry(): Failed to send data. Bytes sent 0. Data len 28. Retry count 0

It seems that the first data sending part blocks inside libwebsocket waiting for a signal. Can anyone have a solution for this?

You are right. By the way, throughout the build, did you encounter an issue with the threadpool usage, or did it work automatically?

Today I have built the SDK for MacOS, and the build flowed flawlessly and I could run the built sample viewer right away.
For some reason, the SDK built for Windows has this weird issue.

@LeeAkinobu
Copy link

LeeAkinobu commented Jul 25, 2022

Yes, I've succeeded building with threadpool enabled. You need pthread for Windows. Before build, place the "pthreads for Windows" files at a directory, and add the following to CMAKE_ARGS in CMake/Dependencies/libwebsockets-CMakeLists.txt to tell cmake to use pthread.

-DLWS_HAVE_PTHREAD_H=1
-DLWS_EXT_PTHREAD_INCLUDE_DIR=c:/some/where/pthreads/include
-DLWS_EXT_PTHREAD_LIBRARIES=c:/some/where/pthreads/lib/x64/libpthreadGC2.a
-DLWS_WITH_MINIMAL_EXAMPLES=1

After the build, place the corresponding DLL pthreads/dll/x64/pthreadGC2.dll to somewhere on exec path or at build/samples.

(edited) @mehmetcy84 Adding those arguments to cmake command did not work but editing CMakeLists.txt worked for me. I'm not familiar with CMake and don't know why, though.

@LeeAkinobu
Copy link

Tried updating libwebsocket to latest version (v4.3.2) but no effect.

@mehmetcy84
Copy link
Author

Hi @mehmetcy84, the error codes from your logs mean the following:

  1. 0x58000018: STATUS_BINDING_SOCKET_FAILED
  2. 0x5800001a: STATUS_SEND_DATA_FAILED
  3. 0x0000000a: STATUS_READ_FILE_FAILED
    I think the first two errors happen because of issues with the connection. It could have been caused due to DLWS_WITH_THREADPOOL=0 in libwebsockets. The third error can be caused due to missing permissions to create / read files in a folder

Seems like this issue is not related with threadpool, as per the comment by [nitslp-ri].

Is there a possible workaround, or a way to access to a prebuilt C SDK for Windows, as this is currently blocking development on Windows?

@mehmetcy84
Copy link
Author

Tried updating libwebsocket to latest version (v4.3.2) but no effect.

Have you been able to find a workaround for this?

@LeeAkinobu
Copy link

No, nothing yet.

@uianster
Copy link

hi @mehmetcy84, have you solved this problem yet

@mehmetcy84
Copy link
Author

mehmetcy84 commented Nov 22, 2022

hi @mehmetcy84, have you solved this problem yet
@uianster
Unfortunately not yet. I have all sorts of issues running the Kvs Viewer client on Windows. Signaling (sending SDP offer) works intermittently, STUN server response does not fire the incomingdatahandler callback, and for local connection, the STUN message from the browser is ignored as well not firing OnInboundPacket function. Nothing works on Windows for me.

@uianster
Copy link

hi @mehmetcy84, have you solved this problem yet
@uianster
Unfortunately not yet. I have all sorts of issues running the Kvs Viewer client on Windows. Signaling (sending SDP offer) works intermittently, STUN server response does not fire the incomingdatahandler callback, and for local connection, the STUN message from the browser is ignored as well not firing OnInboundPacket function. Nothing works on Windows for me.

I have the same problem. I tried to solve these problems these days. Now the program can run normally on Windows,it work for me.

The following is what I do:

1、filter network

error log:
2022-07-22 12:46:58 ERROR createSocketConnection(): operation returned status code: 0x58000018
2022-07-22 12:46:58 DEBUG socketSendDataWithRetry(): sendto() failed with errno A socket operation was attempted to an unreachable network.

The log becode of some local network interfaces not work well,you can filter network by:

  • fix:
- configuration.kvsRtcConfiguration.iceSetInterfaceFilterFunc = NULL
+ configuration.kvsRtcConfiguration.iceSetInterfaceFilterFunc = sampleFilterNetworkInterfaces

2、poll events

error log:
2022-07-22 12:46:58 WARN connectionListenerReceiveDataRoutine(): poll() failed with errno An invalid argument was supplied.

for windows,POLLPRI will causes the poll() return -1

  • fix:
- rfds[nfds].events = POLLIN | POLLPRI; 
+ rfds[nfds].events = POLLIN; 

3、send offer timeout

  • fix:
- #define SIGNALING_SEND_TIMEOUT (5 * HUNDREDS_OF_NANOS_IN_A_SECOND)
+ #define SIGNALING_SEND_TIMEOUT (10 * HUNDREDS_OF_NANOS_IN_A_SECOND)

@mehmetcy84
Copy link
Author

mehmetcy84 commented Nov 25, 2022

@uianster Oh my goodness. After months of agony, thanks to you, finally a working solution! @nitslp-ri
Removing POLLPRI and increasing the timeout duration fixed for me.

Kinesis people, please do fix this for Windows...

The only part I didn't apply in your checklist is this: (I had modified code to skip 127.0.0.1 and IPv6 interfaces manually.)

  • configuration.kvsRtcConfiguration.iceSetInterfaceFilterFunc = NULL
  • configuration.kvsRtcConfiguration.iceSetInterfaceFilterFunc = sampleFilterNetworkInterfaces

Adding this change gave me these errors:
2022-11-25 09:39:14 INFO getLocalhostIpAddresses(): Callback set to allow network interface filtering
2022-11-25 09:39:14 DEBUG sampleFilterNetworkInterfaces(): Ethernet 2 blocked. Candidates will not be gathered
2022-11-25 09:39:14 INFO getLocalhostIpAddresses(): Callback set to allow network interface filtering
2022-11-25 09:39:14 DEBUG sampleFilterNetworkInterfaces(): Loopback Pseudo-Interface 1 blocked. Candidates will not be gathered
2022-11-25 09:39:14 INFO getLocalhostIpAddresses(): Callback set to allow network interface filtering
2022-11-25 09:39:14 DEBUG sampleFilterNetworkInterfaces(): Loopback Pseudo-Interface 1 blocked. Candidates will not be gathered
2022-11-25 09:39:14 WARN iceAgentInitHostCandidate(): MEHKIN iceAgentInitHostCandidate-0
2022-11-25 09:39:14 ERROR iceAgentInitHostCandidate(): operation returned status code: 0x5a00001d
2022-11-25 09:39:14 ERROR iceAgentStartGathering(): operation returned status code: 0x5a00001d
[KVS Viewer] setLocalDescription(): operation returned status code: 0x5a00001d

@mehmetcy84
Copy link
Author

mehmetcy84 commented Dec 6, 2022

Tried updating libwebsocket to latest version (v4.3.2) but no effect.

Have you been able to find a workaround for this?

@nitslp-ri how did you manage to update the libwebsocket to latest version?
Did you just change the git tag inside CMake/Dependencies/libwebsockets-CMakeLists.txt?

-GIT_TAG           v4.2.2
+GIT_TAG           v4.3.0

When I changed this I received a build error about applying a path. So I also disabled the patch application for libwebsockets in the same file.

-SET(PATCH_COMMAND git apply --ignore-whitespace ${CMAKE_CURRENT_LIST_DIR}/libwebsockets-old-gcc-fix-cast-cmakelists.patch ${CMAKE_CURRENT_LIST_DIR}/libwebsockets-leak-pipe-fix.patch)
+//SET(PATCH_COMMAND git apply --ignore-whitespace ${CMAKE_CURRENT_LIST_DIR}/libwebsockets-old-gcc-fix-cast-cmakelists.patch ${CMAKE_CURRENT_LIST_DIR}/libwebsockets-leak-pipe-fix.patch)

But still get this error:

[100%] Linking C shared library ..\bin\websockets.dll
LINK Pass 1: command "C:\PROGRA2\MICROS1\2017\ENTERP1\VC\Tools\MSVC\14161.270\bin\Hostx64\x64\link.exe /nologo @CMakeFiles\websockets_shared.dir\objects1.rsp /out:..\bin\websockets.dll /implib:websockets.lib /pdb:E:\BitBucketRepository\amazon-kinesis-video-streams-webrtc-sdk-c-5\open-source\libwebsockets\build\src\project_libwebsockets-build\bin\websockets.pdb /dll /version:0.0 /machine:x64 /debug /INCREMENTAL C:\Program Files\OpenSSL-Win64\lib\VC\libssl64MDd.lib C:\Program Files\OpenSSL-Win64\lib\VC\libcrypto64MDd.lib ssl.lib crypto.lib ws2_32.lib userenv.lib psapi.lib iphlpapi.lib crypt32.lib kernel32.lib user32.lib gdi32.lib winspool.lib shell32.lib ole32.lib oleaut32.lib uuid.lib comdlg32.lib advapi32.lib /MANIFEST /MANIFESTFILE:CMakeFiles\websockets_shared.dir/intermediate.manifest CMakeFiles\websockets_shared.dir/manifest.res" failed (exit code 1104) with the following output:
LINK : fatal error LNK1104: cannot open file 'ssl.lib'

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
needs-triage question Further information is requested
Projects
None yet
Development

No branches or pull requests

4 participants