从C套接字发送和接收数据的安全编码我应该执行哪种检查?

问题描述

我正在编写一个使用C套接字的应用程序。我对send()recv()都进行了一些检查(请参见下面的代码),但是我不确定它们是否足够。要对C套接字进行安全编码,还应该执行哪些其他检查?

ssize_t nbytes;
void send_stuff(int socket_fd,TYPE stuff,size_t EXP_BYTES){
  nbytes = send(socket_fd,(void*)stuff,EXP_BYTES,0);
  if(nbytes < 0){
    fprintf(stderr,"Error in sending stuff from socket %d. Error: %s\n",socket_fd,strerror(errno));
    exit(1);
  }
  if((unsigned long) nbytes < EXP_BYTES){
    fprintf(stderr,"Stuff not entirely sent on socket %d. Error: %s\n",strerror(errno));
    exit(1);
  }
}

recv()相同,已作必要的变通

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)