printf ("- Peer has closed the TLS connection\n");
goto end;
}
+ else if (ret < 0 && gnutls_error_is_fatal (ret) == 0)
+ {
+ fprintf (stderr, "*** Warning: %s\n", gnutls_strerror (ret));
+ }
else if (ret < 0)
{
fprintf (stderr, "*** Error: %s\n", gnutls_strerror (ret));
goto end;
}
- printf ("- Received %d bytes: ", ret);
- for (ii = 0; ii < ret; ii++)
+ if (ret > 0)
{
- fputc (buffer[ii], stdout);
+ printf ("- Received %d bytes: ", ret);
+ for (ii = 0; ii < ret; ii++)
+ {
+ fputc (buffer[ii], stdout);
+ }
+ fputs ("\n", stdout);
}
- fputs ("\n", stdout);
gnutls_bye (session, GNUTLS_SHUT_RDWR);
printf ("- Peer has closed the TLS connection\n");
goto end;
}
+ else if (ret < 0 && gnutls_error_is_fatal (ret) == 0)
+ {
+ fprintf (stderr, "*** Warning: %s\n", gnutls_strerror (ret));
+ }
else if (ret < 0)
{
fprintf (stderr, "*** Error: %s\n", gnutls_strerror (ret));
goto end;
}
- printf ("- Received %d bytes: ", ret);
- for (ii = 0; ii < ret; ii++)
+ if (ret > 0)
{
- fputc (buffer[ii], stdout);
+ printf ("- Received %d bytes: ", ret);
+ for (ii = 0; ii < ret; ii++)
+ {
+ fputc (buffer[ii], stdout);
+ }
+ fputs ("\n", stdout);
}
- fputs ("\n", stdout);
/* It is suggested not to use GNUTLS_SHUT_RDWR in DTLS
* connections because the peer's closure message might
printf ("- Peer has closed the TLS connection\n");
goto end;
}
+ else if (ret < 0 && gnutls_error_is_fatal (ret) == 0)
+ {
+ fprintf (stderr, "*** Warning: %s\n", gnutls_strerror (ret));
+ }
else if (ret < 0)
{
fprintf (stderr, "*** Error: %s\n", gnutls_strerror (ret));
goto end;
}
- printf ("- Received %d bytes: ", ret);
- for (ii = 0; ii < ret; ii++)
+ if (ret > 0)
{
- fputc (buffer[ii], stdout);
+ printf ("- Received %d bytes: ", ret);
+ for (ii = 0; ii < ret; ii++)
+ {
+ fputc (buffer[ii], stdout);
+ }
+ fputs ("\n", stdout);
}
- fputs ("\n", stdout);
gnutls_bye (session, GNUTLS_SHUT_RDWR);
printf ("- Peer has closed the TLS connection\n");
goto end;
}
+ else if (ret < 0 && gnutls_error_is_fatal (ret) == 0)
+ {
+ fprintf (stderr, "*** Warning: %s\n", gnutls_strerror (ret));
+ }
else if (ret < 0)
{
fprintf (stderr, "*** Error: %s\n", gnutls_strerror (ret));
goto end;
}
- printf ("- Received %d bytes: ", ret);
- for (ii = 0; ii < ret; ii++)
+ if (ret > 0)
{
- fputc (buffer[ii], stdout);
+ printf ("- Received %d bytes: ", ret);
+ for (ii = 0; ii < ret; ii++)
+ {
+ fputc (buffer[ii], stdout);
+ }
+ fputs ("\n", stdout);
}
- fputs ("\n", stdout);
gnutls_bye (session, GNUTLS_SHUT_RDWR);
printf ("- Peer has closed the TLS connection\n");
goto end;
}
+ else if (ret < 0 && gnutls_error_is_fatal (ret) == 0)
+ {
+ fprintf (stderr, "*** Warning: %s\n", gnutls_strerror (ret));
+ }
else if (ret < 0)
{
fprintf (stderr, "*** Error: %s\n", gnutls_strerror (ret));
goto end;
}
- printf ("- Received %d bytes: ", ret);
- for (ii = 0; ii < ret; ii++)
+ if (ret > 0)
{
- fputc (buffer[ii], stdout);
+ printf ("- Received %d bytes: ", ret);
+ for (ii = 0; ii < ret; ii++)
+ {
+ fputc (buffer[ii], stdout);
+ }
+ fputs ("\n", stdout);
}
- fputs ("\n", stdout);
gnutls_bye (session, GNUTLS_SHUT_RDWR);
for (;;)
{
- memset (buffer, 0, MAX_BUF + 1);
ret = gnutls_record_recv (session, buffer, MAX_BUF);
if (ret == 0)
printf ("\n- Peer has closed the GnuTLS connection\n");
break;
}
+ else if (ret < 0 && gnutls_error_is_fatal (ret) == 0)
+ {
+ fprintf (stderr, "*** Warning: %s\n", gnutls_strerror (ret));
+ }
else if (ret < 0)
{
fprintf (stderr, "\n*** Received corrupted "
{
/* echo data back to the client
*/
- gnutls_record_send (session, buffer, strlen (buffer));
+ gnutls_record_send (session, buffer, ret);
}
}
printf ("\n");
}
while (ret == GNUTLS_E_AGAIN || ret == GNUTLS_E_INTERRUPTED);
- if (ret < 0)
+ if (ret < 0 && gnutls_error_is_fatal (ret) == 0)
+ {
+ fprintf (stderr, "*** Warning: %s\n", gnutls_strerror (ret));
+ continue;
+ }
+ else if (ret < 0)
{
fprintf (stderr, "Error in recv(): %s\n",
gnutls_strerror (ret));
break;
}
+
if (ret == 0)
{
printf ("EOF\n\n");
break;
}
+
buffer[ret] = 0;
printf ("received[%.2x%.2x%.2x%.2x%.2x%.2x%.2x%.2x]: %s\n",
sequence[0], sequence[1], sequence[2], sequence[3],
for (;;)
{
- memset (buffer, 0, MAX_BUF + 1);
ret = gnutls_record_recv (session, buffer, MAX_BUF);
if (ret == 0)
printf ("\n- Peer has closed the GnuTLS connection\n");
break;
}
+ else if (ret < 0 && gnutls_error_is_fatal (ret) == 0)
+ {
+ fprintf (stderr, "*** Warning: %s\n", gnutls_strerror (ret));
+ }
else if (ret < 0)
{
fprintf (stderr, "\n*** Received corrupted "
{
/* echo data back to the client
*/
- gnutls_record_send (session, buffer, strlen (buffer));
+ gnutls_record_send (session, buffer, ret);
}
}
printf ("\n");
for (;;)
{
- memset (buffer, 0, MAX_BUF + 1);
ret = gnutls_record_recv (session, buffer, MAX_BUF);
if (ret == 0)
printf ("\n- Peer has closed the GnuTLS connection\n");
break;
}
+ else if (ret < 0 && gnutls_error_is_fatal (ret) == 0)
+ {
+ fprintf (stderr, "*** Warning: %s\n", gnutls_strerror (ret));
+ }
else if (ret < 0)
{
fprintf (stderr, "\n*** Received corrupted "
{
/* echo data back to the client
*/
- gnutls_record_send (session, buffer, strlen (buffer));
+ gnutls_record_send (session, buffer, ret);
}
}
printf ("\n");
for (;;)
{
- memset (buffer, 0, MAX_BUF + 1);
ret = gnutls_record_recv (session, buffer, MAX_BUF);
if (ret == 0)
printf ("\n- Peer has closed the GnuTLS connection\n");
break;
}
+ else if (ret < 0 && gnutls_error_is_fatal (ret) == 0)
+ {
+ fprintf (stderr, "*** Warning: %s\n", gnutls_strerror (ret));
+ }
else if (ret < 0)
{
fprintf (stderr, "\n*** Received corrupted "
{
/* echo data back to the client
*/
- gnutls_record_send (session, buffer, strlen (buffer));
+ gnutls_record_send (session, buffer, ret);
}
}
printf ("\n");
for (;;)
{
- memset (buffer, 0, MAX_BUF + 1);
ret = gnutls_record_recv (session, buffer, MAX_BUF);
if (ret == 0)
printf ("\n- Peer has closed the GnuTLS connection\n");
break;
}
+ else if (ret < 0 && gnutls_error_is_fatal (ret) == 0)
+ {
+ fprintf (stderr, "*** Warning: %s\n", gnutls_strerror (ret));
+ }
else if (ret < 0)
{
fprintf (stderr, "\n*** Received corrupted "
{
/* echo data back to the client
*/
- gnutls_record_send (session, buffer, strlen (buffer));
+ gnutls_record_send (session, buffer, ret);
}
}
printf ("\n");