File:  [ELWIX - Embedded LightWeight unIX -] / libaitsess / contrib / Attic / test_mem.c
Revision 1.1.2.3: download - view: text, annotated - select for diffs - revision graph
Tue Feb 28 00:25:25 2012 UTC (12 years, 4 months ago) by misho
Branches: sess3_1
fix bug into bucket calculation at mpool_free()

    1: #include <stdio.h>
    2: #include <aitsess.h>
    3: 
    4: 
    5: int
    6: main(int argc, char **argv)
    7: {
    8: 	mpool_t *mp;
    9: 	void *addr;
   10: 	int i;
   11: 
   12: 	for (i = 0; i < 3; i++) {
   13: 		addr = malloc(4000);
   14: 		printf("addr=%p\n", addr);
   15: 		free(addr);
   16: 	}
   17: 
   18: 	mp = mpool_init();
   19: 	if (!mp) {
   20: 		printf("Error:: #%d - %s\n", sess_GetErrno(), sess_GetError());
   21: 		return 1;
   22: 	}
   23: 
   24: 	for (i = 0; i < 3; i++) {
   25: 	addr = mpool_malloc(mp, 4000, "mdaaa 4000");
   26: 	if (!addr) {
   27: 		printf("Error:: #%d - %s\n", sess_GetErrno(), sess_GetError());
   28: 		mpool_destroy(&mp);
   29: 		return 2;
   30: 	}
   31: 	printf("addr=%p chkaddr=%d addr_size=%d\n", addr, mpool_chkaddr(addr), mpool_getsizebyaddr(addr));
   32: 
   33: 	strlcpy(addr, "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa\ndddddd\n", 
   34: 			mpool_getsizebyaddr(addr));
   35: 	mpool_free(mp, addr, 0);
   36: 	}
   37: 
   38: 	mpool_purge(mp, 1);
   39: 
   40: 	mpool_destroy(&mp);
   41: 	return 0;
   42: }

FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>