void src_cpp_line( const char *line, int length ) { arg_List args; char *tmp = alloca( length + 1 ); int lineno; strncpy( tmp, line, length ); tmp [ length ] = '\0'; args = arg_argify( tmp, 0 ); if ((lineno = atoi( arg_get( args, 1 ) )) > 0) --lineno; else lineno = 1; src_new_line( lineno ); /* FIXME! This is debugging cruft to be removed. */ if (arg_count( args ) == 2) { PRINTF(MAA_SRC,( "lineno %s\n", arg_get( args, 1 ) )); } else { PRINTF(MAA_SRC,( "lineno %s in %s\n", arg_get( args, 1 ), arg_get( args, 2 ) )); src_new_file( arg_get( args, 2 ) ); } arg_destroy( args ); }
int trap_send_v3(TrapReceiver *tRcv, TrapList *tV3UserList, TrapData *tData) { #if 0 struct arg arg; TrapNode *tV3UserNode, *tParamNode; TrapParam *tParam; TrapV3User *tV3User; for (tV3UserNode = tV3UserList->first; tV3UserNode; tV3UserNode = tV3UserNode->next) { tV3User = tV3UserNode->data; arg_init(&arg, 100, 20); arg_append(&arg, "snmptrap"); arg_append(&arg, "-v"); arg_append(&arg, "3"); arg_append(&arg, "-u"); arg_append(&arg, tV3User->username); if (strlen(tV3User->auth_type) > 0 && strlen(tV3User->auth_passwd) > 0){ arg_append(&arg, "-a"); arg_append(&arg, tV3User->auth_type); arg_append(&arg, "-A"); arg_append(&arg, tV3User->auth_passwd); } if (strlen(tV3User->priv_type) > 0 && strlen(tV3User->priv_passwd) > 0){ arg_append(&arg, "-x"); arg_append(&arg, tV3User->priv_type); arg_append(&arg, "-X"); arg_append(&arg, tV3User->priv_passwd); } char addr[100]; snprintf(addr, sizeof(addr), "%s:%hd", tRcv->rcv_ip, 162); arg_append(&arg, addr); char tm[100]; snprintf(tm, sizeof(tm), "%ul", time(0)*100); arg_append(&arg, tm); arg_append(&arg, tData->oid); for (tParamNode = tData->paramList.first; tParamNode; tParamNode = tParamNode->next){ tParam = tParamNode->data; arg_append(&arg, tParam->oid); char buf[10]; sprintf(buf, "%c", tParam->type); arg_append(&arg, buf); arg_append(&arg, tParam->value); } trap_exec(arg.argc, arg.argv); arg_destroy(&arg); } #endif return 0; }
int main_regtest(int argc, char *argv[]) { arg_t *a; gzFile fp; if (argc == 1) { fprintf(stderr, "Usage: fastARG regtest <in.arg>\n"); return 1; } fp = strcmp(argv[1], "-") == 0? gzdopen(fileno(stdin), "r") : gzopen(argv[1], "r"); a = arg_load(fp); gzclose(fp); arg_print(a); arg_destroy(a); return 0; }
void function_destroy(function_t *func) { free(func->name); for (arg_t *atmp, *arg = func->args; arg != NULL; arg=atmp) { atmp = arg->next; arg_destroy(arg); } for (local_t *ltmp, *loc = func->locals; loc != NULL; loc=ltmp) { ltmp = loc->next; local_destroy(loc); } for (temp_t *ttmp, *tmp = func->temps; tmp != NULL; tmp=ttmp) { ttmp = tmp->next; temp_destroy(tmp); } }
int main_leafseq(int argc, char *argv[]) { arg_t *a; gzFile fp; uint64_t **seq; int i, j; if (argc == 1) { fprintf(stderr, "Usage: fastARG leafseq <in.arg>\n"); return 1; } fp = strcmp(argv[1], "-") == 0? gzdopen(fileno(stdin), "r") : gzopen(argv[1], "r"); a = arg_load(fp); gzclose(fp); seq = arg_leaf_seq(a); for (i = 0; i < a->m; ++i) { printf("%d\t", i); for (j = 0; j < a->n; ++j) if (seq[j]) putchar(arg_getseq(seq[j], i) + '0'); putchar('\n'); } // FIXME: memory leak arg_destroy(a); return 0; }