ソケット-Cでアクセスが拒否されました
-
28-10-2019 - |
質問
CのDNSサーバーからMXレコードを取得しようとしています。 私の問題は、sendtoまたはrecvfromを呼び出すたびに、Permissiondeniedエラーが発生することです。 (IDE-Xcode 4、Mac OS X Lion) これまでCで実際に何もしていませんが、割り当てのためにこれが必要です。 http:// wwwからの「インスピレーション」。binarytides.com/blog/dns-query-code-in-c-with-linux-sockets/ これまでの私のコード: ジェネラコディセタグプレ
解決
inet_addr
関数は、ホスト名ではなく、文字列形式のIPアドレスを取ります。"ns1.sil.at"
をそのIPアドレス"213.129.232.1"
に置き換えてみてください
他のヒント
@ joni-salonenの回答に加えて、ソケットをバインドする必要があります。
bind
関数呼び出しを使用します。
ソケットのローカル側を識別するstruct sockaddr_in
が必要です。ファミリAF_INET
、ポート0、アドレスINADDR_ANY
を使用して初期化できます。
所属していません StackOverflow