@@ -1136,9 +1136,9 @@ else version (OpenBSD)
1136
1136
{
1137
1137
ubyte ss_len;
1138
1138
sa_family_t ss_family;
1139
- byte [6 ] __ss_pad1;
1139
+ ubyte [6 ] __ss_pad1;
1140
1140
long __ss_align;
1141
- byte [240 ] __ss_pad2;
1141
+ ubyte [240 ] __ss_pad2;
1142
1142
}
1143
1143
1144
1144
struct msghdr
@@ -1161,20 +1161,25 @@ else version (OpenBSD)
1161
1161
1162
1162
enum : uint
1163
1163
{
1164
- SCM_RIGHTS = 0x01
1164
+ SCM_RIGHTS = 0x01 ,
1165
+ SCM_TIMESTAMP = 0x04
1165
1166
}
1166
1167
1167
1168
private // <sys/_types.h>
1168
1169
{
1169
- extern (D ) size_t _ALIGN(size_t p) { return (p + _ALIGNBYTES) & ~ _ALIGNBYTES; }
1170
+ enum _ALIGNBYTES = c_long.sizeof - 1 ;
1171
+ extern (D ) size_t _ALIGN(size_t p) pure nothrow @nogc
1172
+ {
1173
+ return (p + _ALIGNBYTES) & ~ _ALIGNBYTES;
1174
+ }
1170
1175
}
1171
1176
1172
- extern (D ) ubyte * CMSG_DATA (cmsghdr* cmsg)
1177
+ extern (D ) ubyte * CMSG_DATA (cmsghdr* cmsg) pure nothrow @nogc
1173
1178
{
1174
1179
return cast (ubyte * ) cmsg + _ALIGN(cmsghdr.sizeof);
1175
1180
}
1176
1181
1177
- extern (D ) cmsghdr* CMSG_NXTHDR (msghdr* mhdr, cmsghdr* cmsg)
1182
+ extern (D ) cmsghdr* CMSG_NXTHDR (msghdr* mhdr, cmsghdr* cmsg) pure nothrow @nogc
1178
1183
{
1179
1184
if (cast (ubyte * ) cmsg + _ALIGN(cmsg.cmsg_len) + _ALIGN(cmsghdr.sizeof) >
1180
1185
cast (ubyte * ) mhdr.msg_control + mhdr.msg_controllen)
@@ -1183,11 +1188,24 @@ else version (OpenBSD)
1183
1188
return cast (cmsghdr* ) (cast (ubyte * ) cmsg + _ALIGN(cmsg.cmsg_len));
1184
1189
}
1185
1190
1186
- extern (D ) cmsghdr* CMSG_FIRSTHDR (msghdr* mhdr)
1191
+ extern (D ) cmsghdr* CMSG_FIRSTHDR (msghdr* mhdr) pure nothrow @nogc
1187
1192
{
1188
1193
return mhdr.msg_controllen >= cmsghdr.sizeof ? cast (cmsghdr* ) mhdr.msg_control : null ;
1189
1194
}
1190
1195
1196
+ extern (D )
1197
+ {
1198
+ size_t CMSG_LEN (size_t len) pure nothrow @nogc
1199
+ {
1200
+ return _ALIGN (cmsghdr.sizeof) + len;
1201
+ }
1202
+ }
1203
+
1204
+ extern (D ) size_t CMSG_SPACE (size_t len) pure nothrow @nogc
1205
+ {
1206
+ return _ALIGN (cmsghdr.sizeof) + _ALIGN(len);
1207
+ }
1208
+
1191
1209
struct linger
1192
1210
{
1193
1211
int l_onoff;
0 commit comments