003 File Manager
Current Path:
/usr/src/contrib/subversion/subversion/libsvn_fs_x
usr
/
src
/
contrib
/
subversion
/
subversion
/
libsvn_fs_x
/
📁
..
📄
TODO
(9.58 KB)
📄
batch_fsync.c
(17.36 KB)
📄
batch_fsync.h
(3.74 KB)
📄
cached_data.c
(124.18 KB)
📄
cached_data.h
(8.98 KB)
📄
caching.c
(25.26 KB)
📄
changes.c
(18.9 KB)
📄
changes.h
(5.56 KB)
📄
dag.c
(33.9 KB)
📄
dag.h
(18.94 KB)
📄
dag_cache.c
(37.62 KB)
📄
dag_cache.h
(6.8 KB)
📄
fs.c
(20.49 KB)
📄
fs.h
(20.55 KB)
📄
fs_id.c
(9.6 KB)
📄
fs_id.h
(2.37 KB)
📄
fs_init.h
(1.24 KB)
📄
fs_x.c
(51.32 KB)
📄
fs_x.h
(8.89 KB)
📄
hotcopy.c
(32.16 KB)
📄
hotcopy.h
(2.05 KB)
📄
id.c
(4.92 KB)
📄
id.h
(4.41 KB)
📄
index.c
(136.28 KB)
📄
index.h
(17.5 KB)
📄
libsvn_fs_x.pc.in
(387 B)
📄
lock.c
(45.17 KB)
📄
lock.h
(3.94 KB)
📄
low_level.c
(40.89 KB)
📄
low_level.h
(9.21 KB)
📄
noderevs.c
(31.18 KB)
📄
noderevs.h
(5.39 KB)
📄
pack.c
(82.45 KB)
📄
pack.h
(2.33 KB)
📄
recovery.c
(12.25 KB)
📄
recovery.h
(1.46 KB)
📄
rep-cache-db.h
(2.25 KB)
📄
rep-cache-db.sql
(2.23 KB)
📄
rep-cache.c
(14 KB)
📄
rep-cache.h
(4.26 KB)
📄
reps.c
(29.63 KB)
📄
reps.h
(7.3 KB)
📄
rev_file.c
(17.15 KB)
📄
rev_file.h
(7.15 KB)
📄
revprops.c
(59.51 KB)
📄
revprops.h
(4.99 KB)
📄
string_table.c
(29.61 KB)
📄
string_table.h
(5.06 KB)
📄
structure
(14.88 KB)
📄
temp_serializer.c
(37.31 KB)
📄
temp_serializer.h
(10.7 KB)
📄
transaction.c
(147.9 KB)
📄
transaction.h
(13.26 KB)
📄
tree.c
(120.57 KB)
📄
tree.h
(3.98 KB)
📄
util.c
(22.6 KB)
📄
util.h
(16.85 KB)
📄
verify.c
(30.47 KB)
📄
verify.h
(1.78 KB)
Editing: rev_file.h
/* rev_file.h --- revision file and index access data structure * * ==================================================================== * Licensed to the Apache Software Foundation (ASF) under one * or more contributor license agreements. See the NOTICE file * distributed with this work for additional information * regarding copyright ownership. The ASF licenses this file * to you under the Apache License, Version 2.0 (the * "License"); you may not use this file except in compliance * with the License. You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, * software distributed under the License is distributed on an * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY * KIND, either express or implied. See the License for the * specific language governing permissions and limitations * under the License. * ==================================================================== */ #ifndef SVN_LIBSVN_FS_X__REV_FILE_H #define SVN_LIBSVN_FS_X__REV_FILE_H #include "svn_fs.h" #include "id.h" /* In FSX, index data must be read in sync with the respective revision / * pack file. I.e. we must use packed index files for packed rev files and * unpacked ones for non-packed rev files. So, the whole point is to open * them with matching "is packed" setting in case some background pack * process was run. * * Another thing that this allows us is to lazily open the file, i.e. open * it upon first access. */ /* Opaque index stream type. */ typedef struct svn_fs_x__packed_number_stream_t svn_fs_x__packed_number_stream_t; /* Location and content meta data for an index. */ typedef struct svn_fs_x__index_info_t { /* Offset within the pack / rev file at which the index data starts. */ apr_off_t start; /* First offset behind the index data. */ apr_off_t end; /* MD5 checksum on the whole on-disk representation of the index. */ svn_checksum_t *checksum; } svn_fs_x__index_info_t; /* Location and content meta data for a revision / pack file. */ typedef struct svn_fs_x__rev_file_info_t { /* first (potentially only) revision in the rev / pack file. * SVN_INVALID_REVNUM for txn proto-rev files. */ svn_revnum_t start_revision; /* the revision was packed when the first file / stream got opened */ svn_boolean_t is_packed; } svn_fs_x__rev_file_info_t; /* Data file, including indexes data, and associated properties for * START_REVISION. As the FILE is kept open, background pack operations * will not cause access to this file to fail. */ typedef struct svn_fs_x__revision_file_t svn_fs_x__revision_file_t; /* Initialize the revision / pack file access structure in *FILE for reading * revision REV from filesystem FS. The file will not be opened until the * first call to any of the access functions. * * Allocate *FILE in RESULT_POOL. */ svn_error_t * svn_fs_x__rev_file_init(svn_fs_x__revision_file_t **file, svn_fs_t *fs, svn_revnum_t rev, apr_pool_t *result_pool); /* Open the correct revision file for REV with read and write access. * If necessary, temporarily reset the file's read-only state. If the * filesystem FS has been packed, *FILE will be set to the packed file; * otherwise, set *FILE to the revision file for REV. * * Return SVN_ERR_FS_NO_SUCH_REVISION if the file doesn't exist. * Allocate *FILE in RESULT_POOL and use SCRATCH_POOLfor temporaries. */ svn_error_t * svn_fs_x__rev_file_open_writable(svn_fs_x__revision_file_t **file, svn_fs_t *fs, svn_revnum_t rev, apr_pool_t *result_pool, apr_pool_t *scratch_pool); /* Open the proto-rev file of transaction TXN_ID in FS and return it in *FILE. * Allocate *FILE in RESULT_POOL use and SCRATCH_POOL for temporaries.. */ svn_error_t * svn_fs_x__rev_file_open_proto_rev(svn_fs_x__revision_file_t **file, svn_fs_t *fs, svn_fs_x__txn_id_t txn_id, apr_pool_t* result_pool, apr_pool_t *scratch_pool); /* Wrap the TEMP_FILE, used in the context of FS, into a revision file * struct, allocated in RESULT_POOL, and return it in *FILE. */ svn_error_t * svn_fs_x__rev_file_wrap_temp(svn_fs_x__revision_file_t **file, svn_fs_t *fs, apr_file_t *temp_file, apr_pool_t *result_pool); /* Access functions */ /* Copy the L2P index info for FILE into *INFO. */ svn_error_t * svn_fs_x__rev_file_info(svn_fs_x__rev_file_info_t *info, svn_fs_x__revision_file_t *file); /* Convenience wrapper around svn_io_file_name_get. */ svn_error_t * svn_fs_x__rev_file_name(const char **filename, svn_fs_x__revision_file_t *file, apr_pool_t *result_pool); /* Set *STREAM to the shared stream object of FILE. */ svn_error_t * svn_fs_x__rev_file_stream(svn_stream_t **stream, svn_fs_x__revision_file_t *file); /* Set *APR_FILE to the shared file object of FILE. */ svn_error_t * svn_fs_x__rev_file_get(apr_file_t **apr_file, svn_fs_x__revision_file_t *file); /* Set *STREAM to the shared L2P data stream of FILE. */ svn_error_t * svn_fs_x__rev_file_l2p_index(svn_fs_x__packed_number_stream_t **stream, svn_fs_x__revision_file_t *file); /* Set *STREAM to the shared P2L data stream of FILE. */ svn_error_t * svn_fs_x__rev_file_p2l_index(svn_fs_x__packed_number_stream_t **stream, svn_fs_x__revision_file_t *file); /* Copy the L2P index info for FILE into *INFO. */ svn_error_t * svn_fs_x__rev_file_l2p_info(svn_fs_x__index_info_t *info, svn_fs_x__revision_file_t *file); /* Copy the P2L index info for FILE into *INFO. */ svn_error_t * svn_fs_x__rev_file_p2l_info(svn_fs_x__index_info_t *info, svn_fs_x__revision_file_t *file); /* Set *SIZE to the length of the revision data in FILE. */ svn_error_t * svn_fs_x__rev_file_data_size(svn_filesize_t *size, svn_fs_x__revision_file_t *file); /* File manipulation. */ /* Convenience wrapper around svn_io_file_aligned_seek. */ svn_error_t * svn_fs_x__rev_file_seek(svn_fs_x__revision_file_t *file, apr_off_t *buffer_start, apr_off_t offset); /* Convenience wrapper around svn_fs_x__get_file_offset. */ svn_error_t * svn_fs_x__rev_file_offset(apr_off_t *offset, svn_fs_x__revision_file_t *file); /* Convenience wrapper around svn_io_file_read_full2. */ svn_error_t * svn_fs_x__rev_file_read(svn_fs_x__revision_file_t *file, void *buf, apr_size_t nbytes); /* Close all files and streams in FILE. They will be reopened automatically * by any of the above access functions. */ svn_error_t * svn_fs_x__close_revision_file(svn_fs_x__revision_file_t *file); #endif
Upload File
Create Folder