問題タブ [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.
objective-c - SUN RPC を使用してクライアントからサーバーにファイルを転送する
クライアントから SunRPC を使用して実装されたサーバーにテキスト ファイルを転送しようとしています。データは転送できましたが、最初の 4 文字だけです。定義した変数のデータ型が文字ポインターであるため、最初は1文字しか取得できませんでした。
add.x ファイル
これはクライアントコードです
私のサーバーコード:
int * を定義すると、サーバー側で 4 文字、char * を使用すると 1 文字になるのはなぜですか。私が定義したデータ型の問題ですか。誰かが私に別のアプローチを提案できますか?
linux - Linux と Solaris 間の RPC 呼び出し
Solaris で RPC サーバーを実行しています。Solaris で正常に動作する RPC クライアントがあります。Linux (RHEL 5 または 6) で同じコードをコンパイルして実行すると、サーバーで引数のデコード中にエラーが発生します。問題をどのように見つければよいですか?
コードの一部は次のとおりです。
rpc - sunrpc の独自のトランスポートを追加する
組み込み SoC に RPC メカニズムを実装しようとしています。SoC にはデュアルコアの cortexA9 があり、1 つのコアで ThreadX を実行し、もう 1 つのコアで Linux 3.8 を実行しています。
私の質問は:
- Sunrpc はこれに適していますか?
- 私の知る限り、Linux の sunrpc は UDP/TCP トランスポートのみをサポートしています。独自のトランスポートを追加することは可能ですか? そうですか、ユーザー空間とカーネル コードの両方をハックする必要がありますか?
ありがとうジョーイ
c - クライアントから構造体を送信し、SUN-RPC を使用してリンクされたリストでサーバーに保存します
クライアントから構造体 (いくつかの文字列を含む) をサーバーに転送する RPC を使用して、サーバー/クライアント プログラムを作成したいと考えています。この構造体は、リンク リストを使用してサーバーに保存する必要があります。現時点では、次のコードがあります。
.x ファイル:
サーバ
クライアント
サーバーが文字列をリストに正しく追加していないようです。list-id (リストの先頭) を出力するときは毎回 '1' を出力しますが、現在の呼び出しでサーバー関数に与えられた文字列値を出力するだけです (リストの最初の項目)。
これがどこでうまくいかないか知っている人はいますか?
c - RPCを利用したファイル転送(ファイルの種類は問いません)
あらゆる種類のファイルを転送する RPC プログラムを作成したいと考えています。しかし、クライアントを実行した後にセグメンテーション違反が発生しています:
便宜上、クライアントとサーバー、および .x コードを貼り付けます。
ファイル.x
私のサーバーコードは次のとおりです。
私のクライアントコードは次のとおりです。
ここで従う必要がある変更は何ですか?
事前にサンクス。
rpc - RPC: 受信できません。errno = 接続が拒否されました
電話帳である単純な Sun RPC プログラムを実行しようとしています。サーバーに誰かを追加または削除するなどのコマンドを送受信すると、サーバーはメッセージで応答します。
最初のコマンドの後に両方のプログラム (サーバーとクライアント) を実行すると、予期せず終了し、このエラーが発生しました
私はすでにチェックしておりrpcbind
、portmap
インストールされています。
そして、ここに私のrpcinfo
出力があります:
サーバーの手順は正常に実行されます。サーバー側にprintfを配置すると、サーバーが実行されていることが示されますが、クライアントにメッセージを送信できません!
linux - Unix ドメインソケット上の RPCGEN
私の要件は、異なるプロセス間で RPC 呼び出しを行うことです。本来、これらの呼び出しは 1 対 1 です。単一の送信者、単一の受信者を意味します。私はこの目的のために unix ドメイン ソケットのみを使用するようにアーキテクチャ上制限されています。
この目的のために「rpcgen」を使用したかったのです。しかし問題は、rpcgen が転送メカニズムとして TCP/UDP 上で動作することです。私が望むのは、それらをドメイン ソケット上で実行することです。彼らがドメインソケットを介してそれをサポートしていないことを考えると; 私は必要なことを達成するために、生成後に自分のコードでトランスポートルーチンをスタブすることを考え出しました。しかし、それは簡単なことではないようです。
生成された XDR ストリームをローカル バッファーに書き込んで、必要な方法で転送できるオプションを検討しました。すなわち。ドメインソケットを介して。リモートエンドで取得して機能させることができるかもしれません。これにはデータの別のコピーが含まれる可能性がありますが、現時点ではパフォーマンスは問題ではありません。
この種の問題に対する既成の解決策はありますか? ここで私の最良の選択肢は何ですか。
ありがとうスダルシャン
rpc - プロトコル コンパイラとは rpcgen がプロトコル コンパイラとして知られているのはなぜですか?
rpcgen がプロトコル コンパイラとして知られているのはなぜですか? 私はリモート プロシージャ コールの基本を認識していますが、プロトコル コンパイラという用語を認識しておらず、どこにも解決策を見つけることができません。
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 --
継承によるプロトコル バッファのシリアル化。派生クラスは空です
これは興味深いかもしれません。ただし、まだコードを機能させることはできません。