Jon Shallow fc7bf57a61 GnuTLS Server: Handle session setup failures following a session setup failure
src/coap_gnutls.s:

If a DTLS server session setup fails (invalid / missing certificate etc.)
and the client has sent some more of the DTLS setup exchange packets before
receiving the TLS alert packet closing things down, any subsequent new DTLS
sessions will fail.

Caused by the g_env environment getting partially polluted with information
with the subsequent DTLS setup exchange packets.

The primary fix is for coap_dtls_hello() is to clear out g_env if there is a
ClientHello packet failure (error return from do_gnutls_handshake()) as well
as if the packet is not of the form of a ClientHello, then it is simply
ignored.

(This may be what is being seen in #300)
2019-03-01 10:33:14 +00:00
2018-11-24 13:58:44 +01:00
2018-05-28 13:26:10 +02:00
2019-02-10 14:47:23 +01:00
2018-12-10 20:15:25 +00:00
2018-11-27 15:33:52 +00:00
2018-12-10 20:15:25 +00:00
2019-02-02 10:33:22 +08:00
2017-07-11 12:59:09 +02:00
2018-11-24 13:58:44 +01:00

libcoap: A C implementation of the Constrained Application Protocol (RFC 7252)

Build Status Static Analysis

Copyright (C) 2010--2018 by Olaf Bergmann bergmann@tzi.org and others

ABOUT LIBCOAP

libcoap is a C implementation of a lightweight application-protocol for devices that are constrained their resources such as computing power, RF range, memory, bandwidth, or network packet sizes. This protocol, CoAP, is standardized by the IETF as RFC 7252. For further information related to CoAP, see http://coap.technology.

You might want to check out libcoap-minimal for usage examples.

PACKAGE CONTENTS

This directory contains a protocol parser and basic networking functions for platform with support for malloc() and BSD-style sockets. The examples directory contains a client and a server to demonstrate the use of this library.

LICENSE INFORMATION

This library is published as open-source software without any warranty of any kind. Use is permitted under the terms of the simplified BSD license. It includes public domain software. libcoap binaries may also include open-source software with their respective licensing terms. Please refer to LICENSE for further details.

Languages
C 93.6%
M4 2.9%
CMake 1.8%
Shell 0.7%
Makefile 0.6%
Other 0.4%