私はlibsshを使用しています。
ssh_channel_write
を呼び出した後、読み込むデータがあるかどうかを知る必要があります。 ()データを取得したくない場合
読み込むデータがない場合(たとえば10秒後)には、ssh_channel_write
に再度電話します。
ssh_channel_read
とssh_channel_read_nonblocking
の両方がこれを行うことはできません。 (また、ssh_get_status
をSSH_READ_PENDINGでチェックすることはできません)
この問題を解決する方法はありますか?libssh読み込むデータがあるかどうかはどのようにわかりますか?
2
A
答えて
1
非ブロック...
ssh_select()関数を使用してください。通常のselect()と非常によく似ていますが、ソケットの代わりにチャネルを使用します。
int型ssh_select(ssh_channel *チャネル、ssh_channel * outchannels、 socket_t maxfd、FD_SET * readfds、いるstruct timevalの*タイムアウト)。例えば
、単一チャネルの実装:
ssh_channel channels[2];
ssh_channel myChannel = ssh_channel_new (ssh_session session);
channels[0] = myChannel;
channels[1] = NULL;
struct timeval timeout = (0, 200000); // 0 seconds, 200 millis
int rc = ssh_select (channels, NULL, NULL, NULL, &timeout);
if (rc > 0) {// There is a pending data.
if (rc < 0) // the ssh_select() error.
if (rc == 0) // You've got a broken connection.
関連する問題
- 1. fgetcが0xFFを読み込むとどうなりますか?
- 2. コマンドラインの代わりにstdinからどのように読み込むことができますか?
- 3. どのようにテキストファイルから読み込みますか?
- 4. データベースのデータをチェックボックスリストに読み込み、どのように読むことができますか?
- 5. word2vecベクトルはどのように読み込むことができますか?
- 6. ブラウザはウェブページをどのように読み込みますか?
- 7. prestashopはイメージをどのように読み込みますか?
- 8. オープンリレーがあるかどうかはどうすればわかりますか?
- 9. Kerasはどのように入力データを読み込みますか?
- 10. stdinからの読み込みにはどのような方法がありますか?
- 11. オブジェクトが組み込みデータ型であるかどうかをチェックする関数はありますか?
- 12. Pythonプログラムがstdinから読み込むものがあるかどうかをどのように知ることができますか?
- 13. Graph APIを使用してパブリックデータを読み込むにはどのような方法がありますか?
- 14. フレームをHamburgerMenuにどのように読み込みますか?
- 15. ファイルのようなオブジェクトがあるかどうかはどうすればわかりますか?
- 16. Pythonにはどのような組み込み型がありますか?
- 17. 同じディレクトリのファイルからどのように読み込むのですか?
- 18. フラッシュに読み込むページでxmlの読み込みがありますか?
- 19. これが弱いエンティティであるかどうかはどのようにわかりますか?
- 20. Image Magickのようなプログラムから画像データをどのように読み込みますか?
- 21. ファイルから複数の行のデータをPythonに読み込むにはどうすればよいですか?
- 22. RecyclerViewを非同期でどのように読み込む必要がありますか?
- 23. CPUはどのようにディスクから読み込みますか?
- 24. PipedInputStreamはどのようにOutputStreamから読み込みますか?
- 25. どのようにiframeを使わずにCodeigniterのWordpressページを読み込むことができますか
- 26. Javaの直列化オブジェクトから選択データを読み込むにはどうすればよいですか?
- 27. Asp.net MVCのテーブルから投稿データを読み込むにはどうすればよいですか?
- 28. プリミティブプロパティにはどのようなデータ型がありますか?
- 29. DBからrichtextctrlにどのように読み込みますか?
- 30. どのようにnsarrayからuitableviewを動的に読み込みますか
実際に、私は最終的に、この作業を行うには、 'ssh_channel_read_nonblocking'を使用しています。 – Caesar