問題タブ [sunrpc]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
1745 参照

objective-c - SUN RPC を使用してクライアントからサーバーにファイルを転送する

クライアントから SunRPC を使用して実装されたサーバーにテキスト ファイルを転送しようとしています。データは転送できましたが、最初の 4 文字だけです。定義した変数のデータ型が文字ポインターであるため、最初は1文字しか取得できませんでした。

add.x ファイル

これはクライアントコードです

私のサーバーコード:

int * を定義すると、サーバー側で 4 文字、char * を使用すると 1 文字になるのはなぜですか。私が定義したデータ型の問題ですか。誰かが私に別のアプローチを提案できますか?

0 投票する
1 に答える
317 参照

linux - Linux と Solaris 間の RPC 呼び出し

Solaris で RPC サーバーを実行しています。Solaris で正常に動作する RPC クライアントがあります。Linux (RHEL 5 または 6) で同じコードをコンパイルして実行すると、サーバーで引数のデコード中にエラーが発生します。問題をどのように見つければよいですか?

コードの一部は次のとおりです。

0 投票する
0 に答える
136 参照

rpc - sunrpc の独自のトランスポートを追加する

組み込み SoC に RPC メカニズムを実装しようとしています。SoC にはデュアルコアの cortexA9 があり、1 つのコアで ThreadX を実行し、もう 1 つのコアで Linux 3.8 を実行しています。

私の質問は:

  1. Sunrpc はこれに適していますか?
  2. 私の知る限り、Linux の sunrpc は UDP/TCP トランスポートのみをサポートしています。独自のトランスポートを追加することは可能ですか? そうですか、ユーザー空間とカーネル コードの両方をハックする必要がありますか?

ありがとうジョーイ

0 投票する
1 に答える
1182 参照

c - クライアントから構造体を送信し、SUN-RPC を使用してリンクされたリストでサーバーに保存します

クライアントから構造体 (いくつかの文字列を含む) をサーバーに転送する RPC を使用して、サーバー/クライアント プログラムを作成したいと考えています。この構造体は、リンク リストを使用してサーバーに保存する必要があります。現時点では、次のコードがあります。

.x ファイル:

サーバ

クライアント

サーバーが文字列をリストに正しく追加していないようです。list-id (リストの先頭) を出力するときは毎回 '1' を出力しますが、現在の呼び出しでサーバー関数に与えられた文字列値を出力するだけです (リストの最初の項目)。

これがどこでうまくいかないか知っている人はいますか?

0 投票する
1 に答える
9173 参照

c - RPCを利用したファイル転送(ファイルの種類は問いません)

あらゆる種類のファイルを転送する RPC プログラムを作成したいと考えています。しかし、クライアントを実行した後にセグメンテーション違反が発生しています:

便宜上、クライアントとサーバー、および .x コードを貼り付けます。

ファイル.x

私のサーバーコードは次のとおりです。

私のクライアントコードは次のとおりです。

ここで従う必要がある変更は何ですか?

事前にサンクス。

0 投票する
0 に答える
2639 参照

rpc - RPC: 受信できません。errno = 接続が拒否されました

電話帳である単純な Sun RPC プログラムを実行しようとしています。サーバーに誰かを追加または削除するなどのコマンドを送受信すると、サーバーはメッセージで応答します。

最初のコマンドの後に両方のプログラム (サーバーとクライアント) を実行すると、予期せず終了し、このエラーが発生しました

私はすでにチェックしておりrpcbindportmapインストールされています。

そして、ここに私のrpcinfo出力があります:

サーバーの手順は正常に実行されます。サーバー側にprintfを配置すると、サーバーが実行されていることが示されますが、クライアントにメッセージを送信できません!

0 投票する
0 に答える
817 参照

linux - Unix ドメインソケット上の RPCGEN

私の要件は、異なるプロセス間で RPC 呼び出しを行うことです。本来、これらの呼び出しは 1 対 1 です。単一の送信者、単一の受信者を意味します。私はこの目的のために unix ドメイン ソケットのみを使用するようにアーキテクチャ上制限されています。

この目的のために「rpcgen」を使用したかったのです。しかし問題は、rpcgen が転送メカニズムとして TCP/UDP 上で動作することです。私が望むのは、それらをドメイン ソケット上で実行することです。彼らがドメインソケットを介してそれをサポートしていないことを考えると; 私は必要なことを達成するために、生成後に自分のコードでトランスポートルーチンをスタブすることを考え出しました。しかし、それは簡単なことではないようです。

生成された XDR ストリームをローカル バッファーに書き込んで、必要な方法で転送できるオプションを検討しました。すなわち。ドメインソケットを介して。リモートエンドで取得して機能させることができるかもしれません。これにはデータの別のコピーが含まれる可能性がありますが、現時点ではパフォーマンスは問題ではありません。

この種の問題に対する既成の解決策はありますか? ここで私の最良の選択肢は何ですか。

ありがとうスダルシャン

0 投票する
2 に答える
267 参照

rpc - プロトコル コンパイラとは rpcgen がプロトコル コンパイラとして知られているのはなぜですか?

rpcgen がプロトコル コンパイラとして知られているのはなぜですか? 私はリモート プロシージャ コールの基本を認識していますが、プロトコル コンパイラという用語を認識しておらず、どこにも解決策を見つけることができません。

0 投票する
1 に答える
1506 参照

c++ - 受信した Protobuf オブジェクトにすべてのフィールドがありません

ONCRPC と Google Protobuf を使用して、HDFS の C++ 実装を作成しています。私が直面している問題は、複数のフィールドが入力されたprotobufオブジェクトを送信していることです(シリアル化された文字列を送信し、受信側でそれを解析します)が、受信側でフィールドの1つが設定されていません/存在しません。

これは私の hdfs.proto ファイルの一部です:

これを「クライアント」アプリケーションで使用して、「namenode サーバー」に新しいブロックと、書き込むデータを送信できる datanodelocations のリストを照会します。

だから、私のクライアントで:

私のnamenode server.ccにいる間

NN は「0 1」を出力しますが、この AssignBlockResponse タイプのリクエストを受信したクライアントは「0 0」を示します。つまり、正しいステータスを取得します (AssignBlockResponse メッセージで設定されたステータスを変更することによってテストされます)。それにserver.cc。

どんな助けでも大歓迎です。

-- 編集 1 --

継承によるプロトコル バッファのシリアル化。派生クラスは空です

これは興味深いかもしれません。ただし、まだコードを機能させることはできません。