Add argument checks to camel-block-file.c.
authorMatthew Barnes <mbarnes@redhat.com>
Fri, 21 May 2010 23:58:22 +0000 (19:58 -0400)
committerMatthew Barnes <mbarnes@redhat.com>
Fri, 21 May 2010 23:58:22 +0000 (19:58 -0400)
camel/camel-block-file.c

index 4bbf928..455975a 100644 (file)
@@ -406,6 +406,9 @@ camel_block_file_rename(CamelBlockFile *bs, const gchar *path)
        struct stat st;
        gint err;
 
+       g_return_val_if_fail (CAMEL_IS_BLOCK_FILE (bs), -1);
+       g_return_val_if_fail (path != NULL, -1);
+
        CAMEL_BLOCK_FILE_LOCK(bs, io_lock);
 
        ret = g_rename(bs->path, path);
@@ -433,7 +436,8 @@ gint
 camel_block_file_delete(CamelBlockFile *bs)
 {
        gint ret;
-       struct _CamelBlockFilePrivate *p = bs->priv;
+
+       g_return_val_if_fail (CAMEL_IS_BLOCK_FILE (bs), -1);
 
        CAMEL_BLOCK_FILE_LOCK(bs, io_lock);
 
@@ -445,7 +449,7 @@ camel_block_file_delete(CamelBlockFile *bs)
                bs->fd = -1;
        }
 
-       p->deleted = TRUE;
+       bs->priv->deleted = TRUE;
        ret = g_unlink(bs->path);
 
        CAMEL_BLOCK_FILE_UNLOCK(bs, io_lock);
@@ -468,6 +472,8 @@ camel_block_file_new_block (CamelBlockFile *bs)
 {
        CamelBlock *bl;
 
+       g_return_val_if_fail (CAMEL_IS_BLOCK_FILE (bs), NULL);
+
        CAMEL_BLOCK_FILE_LOCK(bs, root_lock);
 
        if (bs->root->free) {
@@ -505,6 +511,8 @@ camel_block_file_free_block (CamelBlockFile *bs,
 {
        CamelBlock *bl;
 
+       g_return_val_if_fail (CAMEL_IS_BLOCK_FILE (bs), -1);
+
        bl = camel_block_file_get_block (bs, id);
        if (bl == NULL)
                return -1;
@@ -538,6 +546,8 @@ camel_block_file_get_block (CamelBlockFile *bs,
 {
        CamelBlock *bl, *flush, *prev;
 
+       g_return_val_if_fail (CAMEL_IS_BLOCK_FILE (bs), NULL);
+
        /* Sanity check: Dont allow reading of root block (except before its been read)
           or blocks with invalid block id's */
        if ((bs->root == NULL && id != 0)
@@ -614,8 +624,12 @@ camel_block_file_get_block (CamelBlockFile *bs,
  * perform no writes of this block or flushing of it if the cache
  * fills.
  **/
-void camel_block_file_detach_block(CamelBlockFile *bs, CamelBlock *bl)
+void
+camel_block_file_detach_block(CamelBlockFile *bs, CamelBlock *bl)
 {
+       g_return_if_fail (CAMEL_IS_BLOCK_FILE (bs));
+       g_return_if_fail (bl != NULL);
+
        CAMEL_BLOCK_FILE_LOCK(bs, cache_lock);
 
        g_hash_table_remove(bs->blocks, GUINT_TO_POINTER(bl->id));
@@ -632,8 +646,12 @@ void camel_block_file_detach_block(CamelBlockFile *bs, CamelBlock *bl)
  *
  * Reattach a block that has been detached.
  **/
-void camel_block_file_attach_block(CamelBlockFile *bs, CamelBlock *bl)
+void
+camel_block_file_attach_block(CamelBlockFile *bs, CamelBlock *bl)
 {
+       g_return_if_fail (CAMEL_IS_BLOCK_FILE (bs));
+       g_return_if_fail (bl != NULL);
+
        CAMEL_BLOCK_FILE_LOCK(bs, cache_lock);
 
        g_hash_table_insert(bs->blocks, GUINT_TO_POINTER(bl->id), bl);
@@ -651,8 +669,12 @@ void camel_block_file_attach_block(CamelBlockFile *bs, CamelBlock *bl)
  * Mark a block as dirty.  The block will be written to disk if
  * it ever expires from the cache.
  **/
-void camel_block_file_touch_block(CamelBlockFile *bs, CamelBlock *bl)
+void
+camel_block_file_touch_block(CamelBlockFile *bs, CamelBlock *bl)
 {
+       g_return_if_fail (CAMEL_IS_BLOCK_FILE (bs));
+       g_return_if_fail (bl != NULL);
+
        CAMEL_BLOCK_FILE_LOCK(bs, root_lock);
        CAMEL_BLOCK_FILE_LOCK(bs, cache_lock);
 
@@ -680,8 +702,12 @@ void camel_block_file_touch_block(CamelBlockFile *bs, CamelBlock *bl)
  * If a block is detatched and this is the last reference, the
  * block will be freed.
  **/
-void camel_block_file_unref_block(CamelBlockFile *bs, CamelBlock *bl)
+void
+camel_block_file_unref_block(CamelBlockFile *bs, CamelBlock *bl)
 {
+       g_return_if_fail (CAMEL_IS_BLOCK_FILE (bs));
+       g_return_if_fail (bl != NULL);
+
        CAMEL_BLOCK_FILE_LOCK(bs, cache_lock);
 
        if (bl->refcount == 1 && (bl->flags & CAMEL_BLOCK_DETACHED))
@@ -749,10 +775,14 @@ sync_nolock(CamelBlockFile *bs)
  *
  * Returns: -1 on io error.
  **/
-gint camel_block_file_sync_block(CamelBlockFile *bs, CamelBlock *bl)
+gint
+camel_block_file_sync_block(CamelBlockFile *bs, CamelBlock *bl)
 {
        gint ret;
 
+       g_return_val_if_fail (CAMEL_IS_BLOCK_FILE (bs), -1);
+       g_return_val_if_fail (bl != NULL, -1);
+
        /* LOCK io_lock */
        if (block_file_use(bs) == -1)
                return -1;
@@ -772,10 +802,13 @@ gint camel_block_file_sync_block(CamelBlockFile *bs, CamelBlock *bl)
  *
  * Returns: -1 on io error.
  **/
-gint camel_block_file_sync(CamelBlockFile *bs)
+gint
+camel_block_file_sync(CamelBlockFile *bs)
 {
        gint ret;
 
+       g_return_val_if_fail (CAMEL_IS_BLOCK_FILE (bs), -1);
+
        CAMEL_BLOCK_FILE_LOCK(bs, root_lock);
        CAMEL_BLOCK_FILE_LOCK(bs, cache_lock);
 
@@ -1018,6 +1051,9 @@ camel_key_file_rename(CamelKeyFile *kf, const gchar *path)
        struct stat st;
        gint err;
 
+       g_return_val_if_fail (CAMEL_IS_KEY_FILE (kf), -1);
+       g_return_val_if_fail (path != NULL, -1);
+
        CAMEL_KEY_FILE_LOCK(kf, lock);
 
        ret = g_rename(kf->path, path);
@@ -1045,7 +1081,8 @@ gint
 camel_key_file_delete(CamelKeyFile *kf)
 {
        gint ret;
-       struct _CamelKeyFilePrivate *p = kf->priv;
+
+       g_return_val_if_fail (CAMEL_IS_KEY_FILE (kf), -1);
 
        CAMEL_KEY_FILE_LOCK(kf, lock);
 
@@ -1057,7 +1094,7 @@ camel_key_file_delete(CamelKeyFile *kf)
                kf->fp = NULL;
        }
 
-       p->deleted = TRUE;
+       kf->priv->deleted = TRUE;
        ret = g_unlink(kf->path);
 
        CAMEL_KEY_FILE_UNLOCK(kf, lock);
@@ -1084,6 +1121,10 @@ camel_key_file_write(CamelKeyFile *kf, camel_block_t *parent, gsize len, camel_k
        guint32 size;
        gint ret = -1;
 
+       g_return_val_if_fail (CAMEL_IS_KEY_FILE (kf), -1);
+       g_return_val_if_fail (parent != NULL, -1);
+       g_return_val_if_fail (records != NULL, -1);
+
        d(printf("write key %08x len = %d\n", *parent, len));
 
        if (len == 0) {
@@ -1136,10 +1177,14 @@ gint
 camel_key_file_read(CamelKeyFile *kf, camel_block_t *start, gsize *len, camel_key_t **records)
 {
        guint32 size;
-       glong pos = *start;
+       glong pos;
        camel_block_t next;
        gint ret = -1;
 
+       g_return_val_if_fail (CAMEL_IS_KEY_FILE (kf), -1);
+       g_return_val_if_fail (start != NULL, -1);
+
+       pos = *start;
        if (pos == 0)
                return 0;