1251881Speter/* uuids-table.h : internal interface to `uuids' table 2251881Speter * 3251881Speter * ==================================================================== 4251881Speter * Licensed to the Apache Software Foundation (ASF) under one 5251881Speter * or more contributor license agreements. See the NOTICE file 6251881Speter * distributed with this work for additional information 7251881Speter * regarding copyright ownership. The ASF licenses this file 8251881Speter * to you under the Apache License, Version 2.0 (the 9251881Speter * "License"); you may not use this file except in compliance 10251881Speter * with the License. You may obtain a copy of the License at 11251881Speter * 12251881Speter * http://www.apache.org/licenses/LICENSE-2.0 13251881Speter * 14251881Speter * Unless required by applicable law or agreed to in writing, 15251881Speter * software distributed under the License is distributed on an 16251881Speter * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY 17251881Speter * KIND, either express or implied. See the License for the 18251881Speter * specific language governing permissions and limitations 19251881Speter * under the License. 20251881Speter * ==================================================================== 21251881Speter */ 22251881Speter 23251881Speter#ifndef SVN_LIBSVN_FS_UUIDS_TABLE_H 24251881Speter#define SVN_LIBSVN_FS_UUIDS_TABLE_H 25251881Speter 26251881Speter#define SVN_WANT_BDB 27251881Speter#include "svn_private_config.h" 28251881Speter 29251881Speter#include "svn_io.h" 30251881Speter#include "svn_fs.h" 31251881Speter 32251881Speter#ifdef __cplusplus 33251881Speterextern "C" { 34251881Speter#endif /* __cplusplus */ 35251881Speter 36251881Speter 37251881Speter/* Open a `uuids' table in @a env. 38251881Speter * 39251881Speter * Open a `uuids' table in @a env. If @a create is non-zero, create 40251881Speter * one if it doesn't exist. Set @a *uuids_p to the new table. 41251881Speter * Return a Berkeley DB error code. 42251881Speter */ 43251881Speterint svn_fs_bdb__open_uuids_table(DB **uuids_p, 44251881Speter DB_ENV *env, 45251881Speter svn_boolean_t create); 46251881Speter 47251881Speter/* Get the UUID at index @a idx in the uuids table within @a fs, 48251881Speter * storing the result in @a *uuid. 49251881Speter */ 50251881Spetersvn_error_t *svn_fs_bdb__get_uuid(svn_fs_t *fs, 51251881Speter int idx, 52251881Speter const char **uuid, 53251881Speter trail_t *trail, 54251881Speter apr_pool_t *pool); 55251881Speter 56251881Speter/* Set the UUID at index @a idx in the uuids table within @a fs 57251881Speter * to @a uuid. 58251881Speter */ 59251881Spetersvn_error_t *svn_fs_bdb__set_uuid(svn_fs_t *fs, 60251881Speter int idx, 61251881Speter const char *uuid, 62251881Speter trail_t *trail, 63251881Speter apr_pool_t *pool); 64251881Speter 65251881Speter#ifdef __cplusplus 66251881Speter} 67251881Speter#endif /* __cplusplus */ 68251881Speter 69251881Speter#endif /* SVN_LIBSVN_FS_UUIDS_TABLE_H */ 70