echo.c

来自「ssl的客户端和服务端源代码」· C语言 代码 · 共 44 行

C
44
字号
#include "common.h"void echo(ssl,s)  SSL *ssl;  int s;  {    char buf[BUFSIZZ];    int r,len,offset;        while(1){      /* First read data */      r=SSL_read(ssl,buf,BUFSIZZ);      switch(SSL_get_error(ssl,r)){        case SSL_ERROR_NONE:          len=r;          break;        case SSL_ERROR_ZERO_RETURN:          goto end;        default:          berr_exit("SSL read problem");      }      /* Now keep writing until we've written everything*/      offset=0;            while(len){        r=SSL_write(ssl,buf+offset,len);        switch(SSL_get_error(ssl,r)){          case SSL_ERROR_NONE:            len-=r;            offset+=r;            break;          default:            berr_exit("SSL write problem");        }      }    }  end:    SSL_shutdown(ssl);    SSL_free(ssl);    close(s);  }          

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?