Thread (5 messages) 5 messages, 3 authors, 2011-02-21

the use sin_zero in sockaddr_in

From: Wick <hidden>
Date: 2011-02-21 16:55:34

On Tue, Feb 22, 2011 at 12:34 AM, prabhu [off-list ref] wrote:
Jose Celestino wrote:

On Seg, 2011-02-21 at 21:41 +0530, prabhu wrote:


Hi all,

Could anyone please explain the use sin_zero in sockaddr_in?



Padding to allow for casting.



Hi Jose,

Could u please elaborate little more... why we? need this 8 byte padding.

My complete Question:
1. Actually total size of sockaddr_in is 16 byte and out of 16 byte why we
have to use 8 byte for padding.?
2. Do we use these 8 byte for any other usage for real time?
Unix network programming chapter 3.2 says that, "The POSIX specification
requires only three members in the structure: sin_family, sin_addr, and
sin_port. It is acceptable for a POSIX-compliant implementation to define
additional structure members, and this is normal for an Internet socket address
structure. Almost all implementations add the sin_zero member so that all socket
address structures are at least 16 bytes in size. "

It's kinda like structure padding, maybe reserved for extra fields in the
future. You will never use it, just as commented.
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help