summaryrefslogtreecommitdiff
path: root/security/nss/lib
diff options
context:
space:
mode:
authorroeber%netscape.com <devnull@localhost>2000-05-16 01:55:20 +0000
committerroeber%netscape.com <devnull@localhost>2000-05-16 01:55:20 +0000
commit47e344be10298856012a6746999859aba18c968a (patch)
tree78c88a00e2bbaae7a3347b14166a7c85fab54496 /security/nss/lib
parent8989b2ad574b932e7a47af0e289bbafbda32f102 (diff)
downloadnss-hg-47e344be10298856012a6746999859aba18c968a.tar.gz
sync the database after writes
Diffstat (limited to 'security/nss/lib')
-rw-r--r--security/nss/lib/ckfw/dbm/db.c21
1 files changed, 21 insertions, 0 deletions
diff --git a/security/nss/lib/ckfw/dbm/db.c b/security/nss/lib/ckfw/dbm/db.c
index 76d3fe4bd..fc76b42f5 100644
--- a/security/nss/lib/ckfw/dbm/db.c
+++ b/security/nss/lib/ckfw/dbm/db.c
@@ -139,6 +139,7 @@ nss_dbm_db_get_format_version
v.data = buffer;
v.size = nssUTF8_Size((NSSUTF8 *)v.data, (PRStatus *)NULL);
dbrv = db->db->put(db->db, &k, &v, 0);
+ (void)db->db->sync(db->db, 0);
rv = nss_dbm_db_format_version;
} else {
/* No error return.. */
@@ -178,6 +179,11 @@ nss_dbm_db_set_label
rv = CKR_DEVICE_ERROR;
}
+ dbrv = db->db->sync(db->db, 0);
+ if( 0 != dbrv ) {
+ rv = CKR_DEVICE_ERROR;
+ }
+
(void)NSSCKFWMutex_Unlock(db->crustylock);
}
@@ -248,6 +254,12 @@ nss_dbm_db_delete_object
goto done;
}
+ dbrv = dbt->my_db->db->sync(dbt->my_db->db, 0);
+ if( 0 != dbrv ) {
+ rv = CKR_DEVICE_ERROR;
+ goto done;
+ }
+
done:
(void)NSSCKFWMutex_Unlock(dbt->my_db->crustylock);
}
@@ -304,6 +316,11 @@ nss_dbm_db_new_handle
goto done;
}
+ rv = db->db->sync(db->db, 0);
+ if( 0 != rv ) {
+ goto done;
+ }
+
done:
(void)NSSCKFWMutex_Unlock(db->crustylock);
}
@@ -587,6 +604,8 @@ nss_dbm_db_create_object
*pError = CKR_DEVICE_ERROR;
}
+ (void)db->db->sync(db->db, 0);
+
(void)NSSCKFWMutex_Unlock(db->crustylock);
}
@@ -1031,6 +1050,8 @@ nss_dbm_db_set_object_attribute
goto done;
}
+ (void)dbt->my_db->db->sync(dbt->my_db->db, 0);
+
done:
(void)NSSCKFWMutex_Unlock(dbt->my_db->crustylock);
}