*/
/*
- Copyright (C) 2001, 2002 Kern Sibbald and John Walker
+ Copyright (C) 2001-2003 Kern Sibbald and John Walker
This program is free software; you can redistribute it and/or
modify it under the terms of the GNU General Public License as
* -----------------------------------------------------------------------
*/
-int db_create_file_attributes_record(B_DB *mdb, ATTR_DBR *ar)
+int db_create_file_attributes_record(JCR *jcr, B_DB *mdb, ATTR_DBR *ar)
{
/* *****FIXME***** implement this */
return 1;
}
-int db_create_file_item(B_DB *mdb, ATTR_DBR *ar)
+int db_create_file_item(JCR *jcr, B_DB *mdb, ATTR_DBR *ar)
{
/****FIXME***** not implemented */
return 1;
* Returns: 0 on failure
* 1 on success
*/
-int db_create_job_record(B_DB *mdb, JOB_DBR *jr)
+int db_create_job_record(JCR *jcr, B_DB *mdb, JOB_DBR *jr)
{
int len;
* Returns: 0 on failure
* record-id on success
*/
-int db_create_jobmedia_record(B_DB *mdb, JOBMEDIA_DBR *jm)
+int db_create_jobmedia_record(JCR *jcr, B_DB *mdb, JOBMEDIA_DBR *jm)
{
int len;
* Returns: 0 on failure
* 1 on success
*/
-int db_create_pool_record(B_DB *mdb, POOL_DBR *pr)
+int db_create_pool_record(JCR *jcr, B_DB *mdb, POOL_DBR *pr)
{
int len;
POOL_DBR mpr;
memset(&mpr, 0, sizeof(mpr));
strcpy(mpr.Name, pr->Name);
- if (db_get_pool_record(mdb, &mpr)) {
+ if (db_get_pool_record(jcr, mdb, &mpr)) {
Mmsg1(&mdb->errmsg, "Pool record %s already exists\n", mpr.Name);
return 0;
}
* Returns: 0 on failure
* 1 on success
*/
-int db_create_media_record(B_DB *mdb, MEDIA_DBR *mr)
+int db_create_media_record(JCR *jcr, B_DB *mdb, MEDIA_DBR *mr)
{
int len;
MEDIA_DBR mmr;
+ db_lock(mdb);
memset(&mmr, 0, sizeof(mmr));
strcpy(mmr.VolumeName, mr->VolumeName);
- if (db_get_media_record(mdb, &mmr)) {
+ if (db_get_media_record(jcr, mdb, &mmr)) {
Mmsg1(&mdb->errmsg, "Media record %s already exists\n", mmr.VolumeName);
+ db_unlock(mdb);
return 0;
}
- db_lock(mdb);
mdb->control.MediaId++;
mr->MediaId = mdb->control.MediaId;
* Returns: 0 on failure
* 1 on success
*/
-int db_create_client_record(B_DB *mdb, CLIENT_DBR *cr)
+int db_create_client_record(JCR *jcr, B_DB *mdb, CLIENT_DBR *cr)
{
int len;
CLIENT_DBR lcr;
+ db_lock(mdb);
cr->ClientId = 0;
- if (db_get_client_record(mdb, cr)) {
+ if (db_get_client_record(jcr, mdb, cr)) {
Mmsg1(&mdb->errmsg, "Client record %s already exists\n", cr->Name);
+ db_unlock(mdb);
return 1;
}
- db_lock(mdb);
if (!bdb_open_client_file(mdb)) {
db_unlock(mdb);
return 0;
* Returns: 0 on failure
* 1 on success
*/
-int db_create_fileset_record(B_DB *mdb, FILESET_DBR *fsr)
+int db_create_fileset_record(JCR *jcr, B_DB *mdb, FILESET_DBR *fsr)
{
int len;
FILESET_DBR lfsr;
+ db_lock(mdb);
fsr->FileSetId = 0;
- if (db_get_fileset_record(mdb, fsr)) {
+ if (db_get_fileset_record(jcr, mdb, fsr)) {
Mmsg1(&mdb->errmsg, "FileSet record %s already exists\n", fsr->FileSet);
+ db_unlock(mdb);
return 1;
}
- db_lock(mdb);
if (!bdb_open_fileset_file(mdb)) {
db_unlock(mdb);
return 0;
return 1;
}
+int db_create_counter_record(JCR *jcr, B_DB *mdb, COUNTER_DBR *cr)
+{ return 0; }
+
+
#endif /* HAVE_BACULA_DB */