Linux man
ページに記載されているとおり
この定数を
getsockopt
またはsetsockopt
のレベル引数として使用して、このセクションで説明するソケットレベルのオプションを操作します
しかし、この説明は得られません。 SOL_SOCKET
の目的は何ですか?それは何をするためのものか?
SOL_SOCKET
はソケット層そのものです。プロトコルに依存しないオプションに使用されます。
もっと読むことができます こちら 。
ソケットオプションを取得または設定するときは、オプション名とレベルを指定します。 level = SOL_SOCKET
の場合、アイテムはソケット自体で検索されます。
たとえば、ソケットオプションを設定してアドレスを1(on/true)に再利用する場合、「レベル」SOL_SOCKET
と設定する値を渡します。
int value = 1;
setsockopt(mysocket, SOL_SOCKET, SO_REUSEADDR, &value, sizeof(value));
これにより、ソケットのSO_REUSEADDR
が1に設定されます。
私はこれに固執しました、ドキュメントは非常に不可解です。ここで少し詳細なドキュメント: http://pubs.opengroup.org/onlinepubs/7908799/xns/getsockopt.html