@@ -1297,13 +1297,20 @@ void to_zval_read_in6_pktinfo(const char *data, zval *zv, res_context *ctx)
1297
1297
}
1298
1298
#endif
1299
1299
1300
- /* CONVERSIONS for struct ucred */
1300
+ /* CONVERSIONS for struct ucred/cmsgcred */
1301
1301
#ifdef SO_PASSCRED
1302
1302
static const field_descriptor descriptors_ucred [] = {
1303
+ #if defined(ANC_CREDS_UCRED )
1303
1304
{"pid" , sizeof ("pid" ), 1 , offsetof(struct ucred , pid ), from_zval_write_pid_t , to_zval_read_pid_t },
1304
1305
{"uid" , sizeof ("uid" ), 1 , offsetof(struct ucred , uid ), from_zval_write_uid_t , to_zval_read_uid_t },
1305
1306
/* assume the type gid_t is the same as uid_t: */
1306
1307
{"gid" , sizeof ("gid" ), 1 , offsetof(struct ucred , gid ), from_zval_write_uid_t , to_zval_read_uid_t },
1308
+ #elif defined(ANC_CREDS_CMSGCRED )
1309
+ {"pid" , sizeof ("pid" ), 1 , offsetof(struct cmsgcred , cmcred_pid ), from_zval_write_pid_t , to_zval_read_pid_t },
1310
+ {"uid" , sizeof ("uid" ), 1 , offsetof(struct cmsgcred , cmcred_uid ), from_zval_write_uid_t , to_zval_read_uid_t },
1311
+ /* assume the type gid_t is the same as uid_t: */
1312
+ {"gid" , sizeof ("gid" ), 1 , offsetof(struct cmsgcred , cmcred_gid ), from_zval_write_uid_t , to_zval_read_uid_t },
1313
+ #endif
1307
1314
{0 }
1308
1315
};
1309
1316
void from_zval_write_ucred (const zval * container , char * ucred_c , ser_context * ctx )
0 commit comments