私はとても迷っています。サーバーからの読み取りを停止する方法がわかりません。基本的に、ディレクトリ内のすべてのファイルのリストをサーバーからクライアントに送信しています。これが私がしていることです。
サーバ側:
struct dirent *ep = readdir(dp);
while( ep ){
sprintf(buf, "%s", (ep->d_name));
n = write(newsock, buf, MAX );
ep = readdir(dp);
}
クライアント側:
while( n = read(sock, buf, MAX)){
printf("buf: %s\n" , buf);
}
したがって、サーバー側のものは正常に機能します。すべてのファイル名を正しく送信していることがわかりますが、クライアント側ではすべての名前を読み取りますが、さらに読み取るのを待っているだけです。