-/* $Id: bfile.c,v 1.43 2005-05-17 08:50:48 adam Exp $
- Copyright (C) 1995-2005
+/* $Id: bfile.c,v 1.50 2006-10-10 10:19:28 adam Exp $
+ Copyright (C) 1995-2006
Index Data ApS
This file is part of the Zebra server.
for more details.
You should have received a copy of the GNU General Public License
-along with Zebra; see the file LICENSE.zebra. If not, write to the
-Free Software Foundation, 59 Temple Place - Suite 330, Boston, MA
-02111-1307, USA.
+along with this program; if not, write to the Free Software
+Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
+
*/
#include <stdio.h>
#include <assert.h>
#ifdef WIN32
#include <io.h>
-#else
+#endif
+
+#if HAVE_UNISTD_H
#include <unistd.h>
#endif
if (!bf)
return 0;
/* HEADER_SIZE is considered enough for our header */
- if (bf->alloc_buf_size < HEADER_SIZE)
+ if (bf->block_size < HEADER_SIZE)
bf->alloc_buf_size = HEADER_SIZE;
else
bf->alloc_buf_size = bf->block_size;
bf_close(bf);
return 0;
}
+ if (hbuf[l] == ' ')
+ l++;
if (more_info)
*more_info = hbuf + l;
return bf;
{
if (!bfs)
return;
- mf_reset (bfs->commit_area);
- mf_reset (bfs->register_area);
+ mf_reset(bfs->commit_area, 1);
+ mf_reset(bfs->register_area, 1);
}
void bf_commitExec (BFiles bfs)
void bf_commitClean (BFiles bfs, const char *spec)
{
- FILE *inf;
- int block_size;
- char path[256];
- MFile mf;
- CFile cf;
int mustDisable = 0;
- int firstTime;
if (!bfs->commit_area)
{
mustDisable = 1;
}
- if (!(inf = open_cache (bfs, "rb")))
- return ;
- while (fscanf (inf, "%s %d", path, &block_size) == 2)
- {
- mf = mf_open (bfs->register_area, path, block_size, 0);
- cf = cf_open (mf, bfs->commit_area, path, block_size, 1, &firstTime);
- cf_unlink (cf);
- cf_close (cf);
- mf_close (mf);
- }
- fclose (inf);
+ mf_reset(bfs->commit_area, 1);
+
unlink_cache (bfs);
if (mustDisable)
bf_cache (bfs, 0);
}
return 0;
}
+
+int bfs_register_directory_stat(BFiles bfs, int no, const char **directory,
+ double *used_bytes, double *max_bytes)
+{
+ return mf_area_directory_stat(bfs->register_area, no, directory,
+ used_bytes, max_bytes);
+}
+
+
+int bfs_shadow_directory_stat(BFiles bfs, int no, const char **directory,
+ double *used_bytes, double *max_bytes)
+{
+ if (!bfs->commit_area)
+ return 0;
+ return mf_area_directory_stat(bfs->commit_area, no, directory,
+ used_bytes, max_bytes);
+}
+/*
+ * Local variables:
+ * c-basic-offset: 4
+ * indent-tabs-mode: nil
+ * End:
+ * vim: shiftwidth=4 tabstop=8 expandtab
+ */
+