@@ -1297,13 +1297,20 @@ void to_zval_read_in6_pktinfo(const char *data, zval *zv, res_context *ctx)
12971297}
12981298#endif
12991299
1300- /* CONVERSIONS for struct ucred */
1300+ /* CONVERSIONS for struct ucred/cmsgcred */
13011301#ifdef SO_PASSCRED
13021302static const field_descriptor descriptors_ucred [] = {
1303+ #if defined(ANC_CREDS_UCRED )
13031304 {"pid" , sizeof ("pid" ), 1 , offsetof(struct ucred , pid ), from_zval_write_pid_t , to_zval_read_pid_t },
13041305 {"uid" , sizeof ("uid" ), 1 , offsetof(struct ucred , uid ), from_zval_write_uid_t , to_zval_read_uid_t },
13051306 /* assume the type gid_t is the same as uid_t: */
13061307 {"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
13071314 {0 }
13081315};
13091316void from_zval_write_ucred (const zval * container , char * ucred_c , ser_context * ctx )
0 commit comments