On Wed, Apr 24, 2019 at 5:41 PM Rainer Stratmann <
[email protected]> wrote:
> struct sockaddr_ll {
> unsigned short sll_family;
> unsigned short sll_protocol;
> int sll_ifindex;
> unsigned short sll_hatype;
> unsigned char sll_pkttype;
> unsigned char sll_halen;
> unsigned char sll_addr[8];
> };
>
> type
> sockaddr_ll = record
> sll_family : word;
> sll_protocol : word;
> sll_ifindex : integer;
> sll_hatype : word;
> sll_pkttype : byte;
> sll_halen : byte;
> sll_addr: array[ 0 .. 7 ] of byte;
> end;
>
> Is this correct?
It seems OK, however, if you want portability too, you should:
uses
ctypes;
{$PACKRECORDS C} // already commented by Michael
type
sockaddr_ll = record
sll_family: cushort;
sll_protocol: cushort;
sll_ifindex: cint;
sll_hatype: cushort;
sll_pkttype: cuchar;
sll_halen: cuchar;
sll_addr: array[0..7] of cuchar;
end;
cheers
--
Silvio Clécio
_______________________________________________
fpc-pascal maillist - [email protected]
http://lists.freepascal.org/cgi-bin/mailman/listinfo/fpc-pascal