- {$ifdef mswindows}\r
- TInetSockAddr = packed Record\r
- family:Word;\r
- port :Word;\r
- addr :uint32;\r
- pad :array [1..8] of byte;\r
- end;\r
- {$ifdef ipv6}\r
-\r
- TInetSockAddr6 = packed record\r
- sin6_family: word;\r
- sin6_port: word;\r
- sin6_flowinfo: uint32;\r
- sin6_addr: tin6_addr;\r
- sin6_scope_id: uint32;\r
- end;\r
+ {zipplet 20170204: FPC 3.0.0 changed the definition of TInetSockAddr:\r
+ - http://www.freepascal.org/docs-html/rtl/sockets/tinetsockaddr.html\r
+ - http://www.freepascal.org/docs-html/rtl/sockets/sockaddr_in.html\r
+ Due to this, TInetSockAddr -> TLInetSockAddr4 / TLInetSockAddr6\r
+ Using our own types no matter what OS or compiler version will prevent future problems.\r
+ Adding "4" to non IPv6 record names improves code clarity }\r
+\r
+ {$ifndef mswindows}\r
+ //zipplet 20170204: Do we still need to support ver1_0? Perhaps a cleanup is in order.\r
+ //For now keep supporting it for compatibility.\r
+ {$ifdef ver1_0}\r
+ cuint16 = word;\r
+ cuint32 = dword;\r
+ sa_family_t = word;\r