*/
AIDE_METADATA * newAideMetadata() {
AIDE_METADATA *metadata;
- metadata = (AIDE_METADATA *) malloc(sizeof(AIDE_METADATA));
+ metadata = (AIDE_METADATA *) xmalloc(sizeof(AIDE_METADATA));
if (metadata == NULL) {
- ERROR("no memory\n");
+ // ERROR("no memory\n");
return NULL;
}
memset(metadata, 0, sizeof(AIDE_METADATA));
}
/* free */
- if (md->name != NULL) free(md->name);
- if (md->lname != NULL) free(md->lname);
- if (md->sha1 != NULL) free(md->sha1);
- if (md->sha256 != NULL) free(md->sha256);
- if (md->ima_name != NULL) free(md->ima_name);
- if (md->hash_key != NULL) free(md->hash_key);
-
- free(md);
+ if (md->name != NULL) xfree(md->name);
+ if (md->lname != NULL) xfree(md->lname);
+ if (md->sha1 != NULL) xfree(md->sha1);
+ if (md->sha256 != NULL) xfree(md->sha256);
+ if (md->ima_name != NULL) xfree(md->ima_name);
+ if (md->hash_key != NULL) xfree(md->hash_key);
+
+ xfree(md);
md = NULL;
return;
// DEBUG("newAideContext()\n");
- ctx = malloc(sizeof(AIDE_CONTEXT));
+ ctx = xmalloc(sizeof(AIDE_CONTEXT));
if (ctx == NULL) {
- ERROR("no memory\n");
return NULL;
}
memset(ctx, 0, sizeof(AIDE_CONTEXT));
/* hash tables */
// TODO set the size in openpts.h
- ctx->aide_md_table = malloc(sizeof(struct hsearch_data));
+ ctx->aide_md_table = xmalloc(sizeof(struct hsearch_data));
// TODO ck null
memset(ctx->aide_md_table, 0, sizeof(struct hsearch_data));
rc = hcreate_r(AIDE_HASH_TABLE_SIZE, ctx->aide_md_table); // hash table for metadata
}
ctx->aide_md_table_size = 0;
- ctx->aide_in_table = malloc(sizeof(struct hsearch_data));
+ ctx->aide_in_table = xmalloc(sizeof(struct hsearch_data));
// TODO ck null
memset(ctx->aide_in_table, 0, sizeof(struct hsearch_data));
// 4096 full
return ctx;
error:
- if (ctx != NULL) free(ctx);
+ if (ctx != NULL) xfree(ctx);
return NULL;
}
/* Free */
if (list->name != NULL) {
- free(list->name);
+ xfree(list->name);
}
- free(list);
+ xfree(list);
return;
}
hdestroy_r(ctx->aide_md_table);
hdestroy_r(ctx->aide_in_table);
- free(ctx->aide_md_table);
- free(ctx->aide_in_table);
+ xfree(ctx->aide_md_table);
+ xfree(ctx->aide_in_table);
#ifdef CONFIG_SQLITE
if (ctx->sqlite_db != NULL) {
freeAideIgnoreList(ctx->ignore_name_start);
}
- free(ctx);
+ xfree(ctx);
return;
}
switch (items[i]) {
case AIDE_ITEM_NAME: // char
if (!is_null) {
- md->name = smalloc(ptr);
+ md->name = smalloc_assert(ptr);
}
break;
case AIDE_ITEM_LNAME: // char
if (!is_null) {
- md->lname = smalloc(ptr);
+ md->lname = smalloc_assert(ptr);
}
break;
case AIDE_ITEM_ATTR: // int
// TODO SHA1 only, add hash agility later
/* alloc hash key */
sha1_b64_ptr[SHA1_BASE64_DIGEST_SIZE] = 0; // jXgiZyt0yUbP4QhAq9WFsLF/FL4= 28
- md->hash_key = malloc(strlen(sha1_b64_ptr) +1);
+ md->hash_key = xmalloc(strlen(sha1_b64_ptr) +1);
// TODO check NULL
memcpy(md->hash_key, sha1_b64_ptr, strlen(sha1_b64_ptr) + 1);
DEBUG("%4d [%s]\n", cnt, line);
/* new */
- list = malloc(sizeof(AIDE_LIST));
+ list = xmalloc(sizeof(AIDE_LIST));
if (list == NULL) {
ERROR("no mem\n");
rc = PTS_OS_ERROR;
goto error; // return -1;
}
memset(list, 0, sizeof(AIDE_LIST));
- list->name = smalloc(line);
+ list->name = smalloc_assert(line);
/* add to chain */
if (ctx->ignore_name_start == NULL) {
// TODO(munetoh) how this work?
void copyAideMetadata(AIDE_METADATA *dst, AIDE_METADATA *src) {
if (dst->name == NULL) {
- dst->name = malloc(strlen(src->name) + 1);
+ dst->name = xmalloc(strlen(src->name) + 1);
memcpy(dst->name, src->name, strlen(src->name) + 1);
}
}
return -1;
}
rc = verifyBySQLite(ctx, (char*)buf);
- free(buf);
+ xfree(buf);
if (rc == OPENPTS_RESULT_VALID) {
/* hit */
rc = checkIgnoreList(ctx, name);
if (rc == 0) {
// HIT
- free(name);
+ xfree(name);
return 1; // IGNORE
}
- free(name);
+ xfree(name);
return 2;
#else
- free(name);
+ xfree(name);
return 1; // force
#endif
}
len = strlen(in);
/* rough malloc new buffer */
- buf = malloc(len*3);
+ buf = xmalloc(len*3);
if (buf == NULL) {
- ERROR("no memory\n");
return -1;
}
gzprintf(fp, "bad_filename ");
} else {
gzprintf(fp, "%s ", aide_filename);
- free(aide_filename);
+ xfree(aide_filename);
aide_filename = NULL;
}
goto close;
}
gzprintf(fp, "%s \n", buf);
- free(buf);
+ xfree(buf);
// printf("%d %s\n", i, buf);
gzseek(fp, 1L, SEEK_CUR); // add one \n
close:
gzclose(fp);
- if (aide_filename != NULL) free(aide_filename);
+ if (aide_filename != NULL) xfree(aide_filename);
DEBUG("convertImlToAideDbFile - done\n");
}
gzprintf(fp, "%s ", md->name);
gzprintf(fp, "%s \n", buf);
- free(buf);
+ xfree(buf);
cnt++;
}