Using sys/types.h types in sys/socket.h

Bruce Evans brde at optusnet.com.au
Wed Jan 8 22:29:39 UTC 2014


On Wed, 8 Jan 2014, Adrian Chadd wrote:

> On 7 January 2014 20:48, Bruce Evans <brde at optusnet.com.au> wrote:
>> Style(9) specifies sorting by size first (it actually mean by alignment
>> first).  That is not very easy since the size^Walignment of typedefed
>> types should be opaque.  In practice, assuming what it is mostly gives
>> correct results.  It gives exactly the opposite of the above:
>>
>>     N-bit u_int holding ptr
>>     M-bit pointer              /* assume M <= N and alignment == size */
>>     32-bit u_int (can spell it u_int, not uint32_t, to pack better with int)
>>     32-bit int                 /* assume plain int gives this */
>
> So:
>
> /*
> * sendfile(2) kqueue information
> */
> struct sf_hdtr_kq {
>        uintptr_t kq_ident;     /* ident (from userland?) */
>        void *kq_udata;         /* user data pointer */
>        uint32_t kq_flags;      /* extra flags to pass in */
>        int kq_fd;              /* kq fd to post completion events on */
> };
>
> ?

Also fix the indentation (use 1 tab after 'void' and 'int' and not the
allowed ugliness of 2 tabs after all type names).

Bruce


More information about the freebsd-arch mailing list