void core_mul() { env *e = prepare_env(); test_int(e, "(* 2 3)", 6); test_int(e, "(* 2 3 4)", 24); test_int(e, "(* (* 2 1) (* 1 3))", 6); test_int(e, "(* (* 2 1) (* 1 3) (* 2 2))", 24); }
void core_add() { env *e = prepare_env(); test_int(e, "(+ 1 1)", 2); test_int(e, "(+ 1 1 1)", 3); test_int(e, "(+ 1 (+ 2 3))", 6); test_int(e, "(+ (+ 2 3) (+ 4 5)))", 14); }
void core_defun() { env *e = prepare_env(); atom *exp = eval(e, parse("(defun hello (x) (+ 2 2))")); test_int(e, "(hello 8)", 4); exp = eval(e, parse("(defun cool () 10)")); test_int(e, "(cool)", 10); exp = eval(e, parse("(defun cool (x y z) (+ x y z))")); test_int(e, "(cool 1 2 3)", 6); }
void core_div() { env *e = prepare_env(); test_int(e, "(/ 3 1)", 3); test_int(e, "(/ 10 2)", 5); test_int(e, "(/ (/ 20 2) (/ 9 3))", 3); atom *exp = eval(e, parse("(/ 2 0)")); check(exp->typ == A_ERROR, "divide by 0 returns error"); }
static int initialize() { int rc; char *version; int major, minor, patch; rc = policy_initialize(); if (rc) return rc; version = db_version(&major, &minor, &patch); if (DB_VERSION_MAJOR != major || DB_VERSION_MINOR != minor) { syslog(LOG_ERR, "This daemon was compiled with " DB_VERSION_STRING " (%d.%d.%d) definitions " "but it is using %s (%d.%d.%d). This will not work! " "Check that the version of the developpement files for Berkeley DB " "match the version that used.", DB_VERSION_MAJOR, DB_VERSION_MINOR, DB_VERSION_PATCH, version, major, minor, patch); abort(); } if (DB_VERSION_PATCH != patch && (opt_verbose || debug_me)) syslog(LOG_INFO, "Compiled with " DB_VERSION_STRING " (%d.%d.%d) definitions. " "Running with %s (%d.%d.%d).", DB_VERSION_MAJOR, DB_VERSION_MINOR, DB_VERSION_PATCH, version, major, minor, patch); else if (debug_me) syslog(LOG_DEBUG, "This daemon was compiled with " DB_VERSION_STRING " (%d.%d.%d) definitions.", DB_VERSION_MAJOR, DB_VERSION_MINOR, DB_VERSION_PATCH); dbdata.data = &triplet_data; dbdata.size = sizeof triplet_data; dbdata.ulen = sizeof triplet_data; dbdata.flags = DB_DBT_USERMEM; rc = prepare_env(); if (!rc) rc = prepare_db(); return rc; }
void core_sub() { env *e = prepare_env(); test_int(e, "(- 1 1)", 0); test_int(e, "(- 4 (- 2 1))", 3); test_int(e, "(- (- 1 4) (- 4 2))", -5); }
int main(int argc, char *argv[]) { char str_to_write[1024]; int i0 = 0; int fd_read; int fd; int ret = 0; char sn_header[16]; char serial_number[SN_MAX_LEN]; char *str_sn; char str_slip[] = "-"; char arg_val[8][64]; CARD_INFO *card_data; CARD_INFO *card_tmp; char *str_read; int fd0; char buf[sizeof(char)+1]; char str_storeu[2048]; int read_flag = 0; #ifdef DEBUG_IN_LINUX char m_data[2048]; #endif char cmd_buf[256]; CARD_INFO *card_store[MAX_CARD_NUMBER]; memset(str_to_write , 0x0 , sizeof(str_to_write)); memset(sn_header , 0x0 , sizeof(sn_header)); memset(serial_number , 0x0 , sizeof(serial_number)); memset(cmd_buf , 0x0 , sizeof(cmd_buf)); #ifdef DEBUG_IN_LINUX memset(m_data , 0x0 , sizeof(m_data)); #endif #ifdef ENABLE_STRUCT i0 = 0; while(i0 < sizeof(card_store)/sizeof(CARD_INFO)) { memset(card_store,0x0,sizeof(CARD_INFO)); i0++; } #endif prepare_env(); //read_file_from_mmc(); /* go out if argument less than 2 */ if(argc < 2) { #ifdef DEBUG_IN_LINUX //testRSAGen(); //encrypt_write_data("test data!",0); //decrypt_read_data(m_data); //JCG("read -->\n%s\n",m_data); #endif JCG("bad args, should be ./q YCT-000000123455; ./q read; ./q write etc."); ret = -1; goto RET_ERR; } JCG("argv[0]:%s, argv[1]:%s.\n",argv[0],argv[1]); if(strcasecmp(argv[1],"clear") == 0) { clear_data(); JCG("clear"); ret = 0; goto RET_SUCC; } #ifdef MAC_WRITER_SUPPORT else if(strncasecmp(argv[1],"mac",sizeof("mac")) == 0) { ret = main_mac(argc,argv); JCG(" MAC Writer!!"); goto RET_SUCC; } #endif else if(strcasecmp(argv[1],"read") == 0) { #if 0 char str_store[2048]; char cmd_buf[256]; char data_buf[256]; memset(cmd_buf , 0x0 , sizeof(cmd_buf)); memset(data_buf , 0x0 , sizeof(data_buf)); /* read data from flash*/ read_data(NULL, str_store); JCG("get read data:%s\n",str_store); #else char get_read_data[2048]; /* read data from flash*/ read_file_from_mmc(); #ifdef ENABLE_STRUCT card_data = (CARD_INFO*) malloc(sizeof(CARD_INFO)); read_data(card_data, NULL); card_tmp = card_data->next; print_card_info(card_data); free(card_data); #else //not ENABLE_STRUCT memset(get_read_data,0x0,sizeof(get_read_data)); read_data(NULL, get_read_data); JCG("get data -->\n%s\n",get_read_data); #endif #endif JCG("read"); ret = 0; goto RET_SUCC; } else if(strncasecmp(argv[1],"del",3) == 0) { /* read data from flash*/ delete_data(argv[1], NULL); JCG("delete"); ret = 0; write_file_to_mmc(); goto RET_SUCC; } else if(strncasecmp(argv[1],"search",strlen("search")) == 0) { search_data(NULL); ret = 0; goto RET_SUCC; } else if(strncasecmp(argv[1],"mmcread",strlen("mmcread")) == 0) { read_file_from_mmc(); ret = 0; goto RET_SUCC; } else if(strncasecmp(argv[1],"mmcwrite",strlen("mmcwrite")) == 0) { write_file_to_mmc(); ret = 0; goto RET_SUCC; } else if(strncasecmp(argv[1],"rmda",strlen("rmda")) == 0) { delete_data_file(); ret = 0; goto RET_SUCC; } JCG("-------- format: ./mac_writer YHK-000000123455 ---------------------------"); write_data(argv[1], NULL); JCG("-----------------------------------"); ret = 0; write_file_to_mmc(); goto RET_SUCC; RET_SUCC: #ifdef DEBUG_IN_ANDROID property_set("persist.sys.mac_writer.proc" ,"done"); #else #endif destroye_env(); return ret; RET_ERR: destroye_env(); return ret; }