When I run ./openssl s_server -dtls1 -no_ecdhe -timeout -cert large.pem against ./openssl s_client -dtls1 I'll get a Segmentation fault on the client side. I attached the certificate (including the private key) to this bug report. GDB told me that the error happened at d1_both.c:539: return frag->msg_header.frag_len; The pointer frag was freed 6 lines above. So I guess the problem is that this function accesses a data structure that has already been freed. To fix this bug I created a temporary variable and copied the value of frag->msg_header.frag_len into that variable right before the call to free(). The return statement then uses this copy instead of accessing already freed memory. With this change applied s_client does not crash any more. I attached the patch to this bug report. -Daniel Download large.pem text/plain 3.6k -----BEGIN CERTIFICATE----- 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 -----END CERTIFICATE----- -----BEGIN RSA PRIVATE KEY----- MIIEpAIBAAKCAQEAvkV7jyZc0fAF3oOxncnQmXhf8pRlgYgf5kU2/geQ0n/2m++l H3CIy01cyMZrnibWxy3xDwKC+T/5UtbOVdgzdBb3ENSlzrld6cfWq9ZB+rS0EqkI ILW+DsVwEZpN9HPXFiSqFGbNDzzTFJ6mvUxPd2erBUVv+S/JtmiYAdN+DD1UJrX4 TqSQtcrar/8LQrHPVAIQaKyUtLSBO5Jkzm587rObIgWBmQRa/QkGb+e9LW5/CJoG 42tAvcvHW2lg4yWFYCWg2vtfhrR0zElMsJjNzNR8uu7PAfAZt3I+hNTRR8nydEsw KxvFdTxtsdN8PZj2R0X9HXxxdNGZEVQaVOs5QwIDAQABAoIBADEZnRkDvVAvsFQL h/o/6iSwe5IN2WPjzNePZPGI4kZv3yO+Y84JLEPKYvcsvPjC7QnZQSuuaj4H1D8c T4K3mA+NHZSqS19dVm7NswgE8mHP3+gw1ngabkFBkfn458T9X7PHIlzBaolUGORp TH3tA1S829UwZgTX4CXCN/fAq/ZcKu6P0CqEDEof1s4mY/9qUGrrJtfIgYPwhIpe RJ2TsemH2YP4btNIE1jJahwc1ZIZuIitiJrK1jAg18i5SZ3l86RdScNNkP6MN1Ni j0fWJDl5F4A38UjmsI06a6u5LonTfztD8kZ3/GMM7fbYXt/phU/6Zzj8q9kn8MNF T2InaYECgYEA7iBR5ccNxeNLXnGUL6ZPGxsb5+3YXSrf20eQ16HO9qfJYJYks6c7 KybAwqznC85vahX0AtT0wAQr/oujMftKbQA6+yriO6u93RYFuyH7G/TT4oKWG6Jy NyXeS9PBSd1OADWYmpB2CcQugU88RZq5rvMPzjnlHaxTaz/6I8igpoUCgYEAzI2d fehnOBRvAIM+QvCx530F2+bblZBW0hwq+2+V2C5ONYYJNW0zaPtjGr9DwV8/1D7Z GXxeBrwuj0RA8MuGi77XyMwU9SuoCFawhBQ5ulOP95D/jNnr8MyB5BEnec64159J Bk8rYauVx4Os7KQywbxcGUhJBm9OzQMm0d0U3ycCgYEAqh12xIN+yGdHubHEXoIe M0wblIYrMuvlPn8S76lN9JILYDADCkEnGP23aZwh9yJEH/KM/tTqAJ86Wr+hF5zh H5uxhyussVpQ6jfIYla1UNSH5mLKH/XeSJ2KAHvHsyAhkC651Xnsia+YVZKoiUUu 79f+66Ialyc79PuglJ3Ifw0CgYEAgKvAWvg7Haq03ISyQJd5wV0Ct34zuJRQGOEB JKLfhloydja3SjVD9pDTmXqg213YH+Hc3Mw/tUrgmtxbYV0VaIiG4leGA2cPzxcA +ERkv9FaqWc7aVWXtiRevKERzOx9l50p6V8ZsdmmYRdySnVLPFUJNhojXXnc/tcx rye7vlcCgYBauOpZ7tvpkd7gckpFbYU1vzgGgytmuYPIKwOqcW2Rwwn1IFmXnFu7 s/z5rs3UZX193sF6E1KzTddvqZOXWWiZbUI6xJkDRxbfjEG4qHu4tR2xIbKMI5w9 Jl/qnY8pgBTNgLeGmqaX5Tj6JZF+uIExdOP20YXWW+BTd1l/5rMyHQ== -----END RSA PRIVATE KEY-----