int flags, isrdonly, isdup;
u_int32_t flags; int isrdonly, isdup;
__db_putchk(dbp, key, data, flags, isrdonly, isdup)	const DB *dbp;	DBT *key;	const DBT *data;	int flags, isrdonly, isdup;{	/* Check for changes to a read-only tree. */	if (isrdonly)		return (__db_rdonly(dbp->dbenv, "put"));	/* Check for invalid db->put() function flags. */	DB_CHECK_FLAGS(dbp->dbenv, "put", flags,	    DB_NOOVERWRITE | (dbp->type == DB_RECNO ? DB_APPEND : 0));	/* Check for invalid key/data flags. */	DB_CHECK_FLAGS(dbp->dbenv, "key", key->flags, 0);	DB_CHECK_FLAGS(dbp->dbenv, "data", data->flags,	    DB_DBT_MALLOC | DB_DBT_USERMEM | DB_DBT_PARTIAL);	DB_CHECK_FCOMBO(dbp->dbenv,	    "data", data->flags, DB_DBT_MALLOC, DB_DBT_USERMEM);	/* Check for partial puts in the presence of duplicates. */	if (isdup && F_ISSET(data, DB_DBT_PARTIAL)) {		__db_err(dbp->dbenv,"a partial put in the presence of duplicates requires a cursor operation");		return (EINVAL);	}	return (0);}