eriptic / uoscore-uedhoc

C implementations for constrained (and non-constrained) devices of the IETF protocols OSCORE and EDHOC
Other
15 stars 15 forks source link

linux_edhoc sample not working #38

Closed sabor12345 closed 1 year ago

sabor12345 commented 1 year ago

Hi!

I have tried to run the linux_edhoc sample program in a linux computer. I have tried both the master branch and the tag v.1.0.8. I cannot complete a handshake successfully.

I have followed these steps:

git clone https://github.com/eriptic/uoscore-uedhoc.git cd uoscore-uedhoc git submodule update --init

Then i go to /uoscore-uedhoc/samples/linux_edhoc/responder and run "make". Then same thing with the initiator, /uoscore-uedhoc/samples/linux_edhoc/initiator.

When i run the responder inside /uoscore-uedhoc/samples/linux_edhoc/responder/build using ./responder then i get this error:

==187946==ERROR: AddressSanitizer failed to allocate 0xdfff0001000 (15392894357504) bytes at address 2008fff7000 (errno: 12) ==187946==ReserveShadowMemoryRange failed while trying to map 0xdfff0001000 bytes. Perhaps you're using ulimit -v Aborted

Same thing happens when i try to run the initiator.

I went to the make file in initiator and responder and commented out these three lines:

CFLAGS += -fsanitize=address -fno-omit-frame-pointer

CXXFLAGS += -fsanitize=address -fno-omit-frame-pointer

LDFLAGS += -fsanitize=address -static-libasan

Then it is possible to run responder and initiator.

The responder stops at " waiting to receive message 3... "because it is waiting for the third message but the initiator gets: "Segmentation fault" .

When i debug it, the segmentation fault occurs inside the "enum err encode_int(const int32_t in, uint32_t in_len, uint8_t out, uint32_t *out_len) function.

Do you know why this is happening and what i can do to fix it? I want to use the Initiator-responder sample, but they have to successfully complete the handshake.

Sincerly Sabor