RCVBUF を 1MB//1048576 に設定しようとしていますが、getsockopt を介して読み取ろうとしているときに値を設定した後、常に 2MB//2097152 の値が返されます。以下のコードの問題を教えてください。
unsigned int rcvBuf = getRcvBufValue();
if (setsockopt (channelfd, SOL_SOCKET, SO_RCVBUF, &rcvBuf,sizeof (rcvBuf)) == -1)
{
cout<<"RCV BUF IS NOT SET";
}
int rcvbuf = -1;
socklen_t Rsize = sizeof(rcvbuf);
getsockopt (channelfd, SOL_SOCKET, SO_RCVBUF,&rcvbuf,&Rsize);
cout<<rcvbuf;