Article ID: 822061 - Last Review: October 30, 2006 - Revision: 1.1

Getsockopt() Function Returns a Different Maximum UDP Message Size Than You Expect in Windows 2000 SP3

Expand all | Collapse all

SYMPTOMS

When you use the Getsockopt() function with the SO_MAX_MSG_SIZE option to obtain the maximum User Datagram Protocol (UDP) message size on a Windows 2000 Service Pack 3 (SP3)-based computer, a value of 65507 is returned. Before you installed Windows 2000 SP3, this value was 65527.

CAUSE

This behavior occurs because the value that is returned by Getsockopt() with the SO_MAX_MSG_SIZE option is incorrect on pre-Windows 2000 SP3 installations.

The correct maximum UDP message size is 65507, as determined by the following formula:
0xffff - (sizeof(IP Header) + sizeof(UDP Header)) = 65535-(20+8) = 65507

STATUS

Microsoft has confirmed that this is a problem in Windows 2000 Service Pack 2. This problem was first corrected in Microsoft Windows 2000 Service Pack 3.

MORE INFORMATION

For additional information about how to obtain the latest Windows 2000 Service Pack, click the article number below to view the article in the Microsoft Knowledge Base:
260910  (http://support.microsoft.com/kb/260910/EN-US/ ) How to Obtain the Latest Windows 2000 Service Pack

APPLIES TO
  • Microsoft Windows 2000 Advanced Server
  • Microsoft Windows 2000 Service Pack 3
  • Microsoft Windows 2000 Service Pack 2
Keywords: 
kbinfo kbbug KB822061
 

Article Translations

 

Related Support Centers