A NOTE has been added to this issue. 
====================================================================== 
https://www.austingroupbugs.net/view.php?id=1641 
====================================================================== 
Reported By:                bastien
Assigned To:                
====================================================================== 
Project:                    1003.1(2016/18)/Issue7+TC2
Issue ID:                   1641
Category:                   System Interfaces
Type:                       Clarification Requested
Severity:                   Editorial
Priority:                   normal
Status:                     New
Name:                       Bastien Roucaries 
Organization:               debian 
User Reference:              
Section:                    sys/socket.h 
Page Number:                Application usage 
Line Number:                sockaddr_storage 
Interp Status:              --- 
Final Accepted Text:         
====================================================================== 
Date Submitted:             2023-03-18 07:52 UTC
Last Modified:              2023-03-22 21:56 UTC
====================================================================== 
Summary:                    sockaddr_storage is not alias safe
====================================================================== 

---------------------------------------------------------------------- 
 (0006227) steffen (reporter) - 2023-03-22 21:56
 https://www.austingroupbugs.net/view.php?id=1641#c6227 
---------------------------------------------------------------------- 
No.  "Issue 8 drafts" is maybe the right standard.

I say maybe.  I personally am the wrong person to talk to, i hate this
aliasing issue, i saw so-and-so many *BSD and more commits fly by where
code that worked started breaking, and had to be circumvented by doing
memcpy(), sheer grazy.

They _broke_ the system.  And i am yet to see the advantages.  (From my
simple userspace programmer's point of view, with a bit of assembler, in
earlier times.)
So if an intermediate cast to "char*" gets you going, or "void*", why do
that at all?
It _will_ fit in the size of sockaddr_storage, it will have the proper
alignment, i want to cast it.  Period.

"POSIX-compliant compilers" (-std=c99) should not fail in theory.
Issue 7 is based upon ISO C99. 

Issue History 
Date Modified    Username       Field                    Change               
====================================================================== 
2023-03-18 07:52 bastien        New Issue                                    
2023-03-18 07:52 bastien        Name                      => Bastien Roucaries
2023-03-18 07:52 bastien        Organization              => debian          
2023-03-18 07:52 bastien        Section                   => sys/socket.h    
2023-03-18 07:52 bastien        Page Number               => Application usage
2023-03-18 07:52 bastien        Line Number               => sockaddr_storage
2023-03-18 07:53 bastien        Note Added: 0006207                          
2023-03-18 07:53 bastien        Issue Monitored: bastien                     
2023-03-20 13:20 wlerch         Note Added: 0006208                          
2023-03-20 13:38 bastien        Note Added: 0006209                          
2023-03-20 23:06 steffen        Note Added: 0006211                          
2023-03-21 12:01 hvd            Note Added: 0006212                          
2023-03-21 23:09 sam_james      Note Added: 0006215                          
2023-03-21 23:33 steffen        Note Added: 0006216                          
2023-03-22 09:42 bastien        Note Added: 0006217                          
2023-03-22 21:56 steffen        Note Added: 0006227                          
======================================================================


  • [1003.1(2016... Austin Group Bug Tracker via austin-group-l at The Open Group
    • [1003.1... Austin Group Bug Tracker via austin-group-l at The Open Group
    • [1003.1... Austin Group Bug Tracker via austin-group-l at The Open Group
    • [1003.1... Austin Group Bug Tracker via austin-group-l at The Open Group
    • [1003.1... Austin Group Bug Tracker via austin-group-l at The Open Group
    • [1003.1... Austin Group Bug Tracker via austin-group-l at The Open Group
    • [1003.1... Austin Group Bug Tracker via austin-group-l at The Open Group
    • [1003.1... Austin Group Bug Tracker via austin-group-l at The Open Group
    • [1003.1... Austin Group Bug Tracker via austin-group-l at The Open Group
    • [1003.1... Austin Group Bug Tracker via austin-group-l at The Open Group
    • [1003.1... Austin Group Bug Tracker via austin-group-l at The Open Group
    • [1003.1... Austin Group Bug Tracker via austin-group-l at The Open Group
    • [1003.1... Austin Group Bug Tracker via austin-group-l at The Open Group
    • [1003.1... Austin Group Bug Tracker via austin-group-l at The Open Group
    • [1003.1... Austin Group Bug Tracker via austin-group-l at The Open Group
    • [1003.1... Austin Group Bug Tracker via austin-group-l at The Open Group
    • [1003.1... Austin Group Bug Tracker via austin-group-l at The Open Group
    • [1003.1... Austin Group Bug Tracker via austin-group-l at The Open Group
    • [1003.1... Austin Group Bug Tracker via austin-group-l at The Open Group
    • [1003.1... Austin Group Bug Tracker via austin-group-l at The Open Group

Reply via email to