Issue: Segmentation Fault in multipath_basic_test() #1788
Replies: 6 comments 6 replies
-
The creation of a server side context will fail if the key and certificate are not properly created. The test keys are located in the source code. By default, the test assumes that it is running in the same directory as the source code. If it is not, you can use the "-S" option to picoquic_ct to document the location of the source code. If you fail to do that, the code will not find the test file, and will refuse to create the context. That said, the code should not crash. Looks like a test bug. |
Beta Was this translation helpful? Give feedback.
-
You don't need to build a main program. All the test functions can be called from
For example, if you built the code in a
|
Beta Was this translation helpful? Give feedback.
-
On the specific question of "stream video files using picoquic protocol", I suppose that you mean "stream video files using QUIC". There are 2 IETF working groups studying that, and proposing two different approaches. One is to use the real time transfer protcol, but instead of sending RTP packets over UDP, send them over a QUIC connection using QUIC datagrams -- see https://www.ietf.org/archive/id/draft-ietf-avtcore-rtp-over-quic-04.html. The other approach, "Media over QUIC" (MoQ), proposes sending media streams as series of QUIC streams and possibly datagrams, see https://datatracker.ietf.org/doc/draft-ietf-moq-transport/. Either approach could be implemented using picoquic, using picoquic functions to send and receive datagrams or streams. Neither of these approaches requires the use of multipath. Use of multipath to transfer multiple media streams is indeed still a research project. |
Beta Was this translation helpful? Give feedback.
-
As the name indicates, Do you have a version of your scenario running in a single path environment, i.e., without trying to create new paths? That might be a nice first step. |
Beta Was this translation helpful? Give feedback.
-
Can you help me out with this error |
Beta Was this translation helpful? Give feedback.
-
That's an errant message. The internal API But yes, that's confusing. There should not be a debug message in the "normal" case. It should be fixed. The test actually succeeds. Two paths are created, and the load is shared between the two paths. |
Beta Was this translation helpful? Give feedback.
-
Description
I am testing the multipath_test code and attempting to run the multipath_basic_test() function. However, it results in a segmentation fault. Upon debugging, I identified that within multipath_basic_test(), the function multipath_test_one() is called. This function invokes tls_api_init_ctx_ex2(), which is defined in tls_api_test.c.
To investigate further, I added print statements inside the definition of tls_api_init_ctx_ex2(). These revealed that while the client is successfully created, the picoquic_create() function returns NULL when attempting to create the server.
Could someone help identify why picoquic_create() is failing for the server context?
Beta Was this translation helpful? Give feedback.
All reactions