struct stmt_singleton *set_res_status_init_once() { journal_strace("set_res_status"); static struct stmt_singleton stmt; static MYSQL_BIND in_buf[SET_RES_STATUS_MAXBUF]; static STMT_SQL_QUERY(sql_stmt, SET_RES_STATUS); unsigned int i; if (stmt.stmt_length == sizeof(SET_RES_STATUS)) return &stmt; memset(&stmt, 0, sizeof(stmt)); init_input_buffer(&stmt, &in_buf[0], sizeof(in_buf)); stmt.stmt = sql_stmt; stmt.stmt_length = sizeof(SET_RES_STATUS); in_buf[SET_RES_STATUS_NAME].buffer_type = MYSQL_TYPE_STRING; in_buf[SET_RES_STATUS_HADDR].buffer_type = MYSQL_TYPE_STRING; in_buf[SET_RES_STATUS_STATUS].buffer_type = MYSQL_TYPE_TINY; in_buf[SET_RES_STATUS_STATUS2].buffer_type = MYSQL_TYPE_TINY; return &stmt; }
/* load a Win32 .res file */ int load_res32_file( const char *name, DLLSPEC *spec ) { int ret; init_input_buffer( name ); if ((ret = check_header())) { while (input_buffer_pos < input_buffer_size) load_next_resource( spec ); } return ret; }
struct stmt_singleton *unset_token_addr_mapping_init_once() { journal_strace("unset_token_addr_mapping_init_once"); static struct stmt_singleton stmt; static MYSQL_BIND in_buf; static STMT_SQL_QUERY(sql_stmt, UNSET_TOKEN_ADDR_MAPPING); if (stmt.stmt_length == sizeof(UNSET_TOKEN_ADDR_MAPPING)) return &stmt; memset(&stmt, 0, sizeof(stmt)); init_input_buffer(&stmt, &in_buf, sizeof(in_buf)); stmt.stmt = sql_stmt; stmt.stmt_length = sizeof(UNSET_TOKEN_ADDR_MAPPING); in_buf.buffer_type = MYSQL_TYPE_STRING; return &stmt; }
struct stmt_singleton *get_token_type_init_once() { journal_strace("get_token_type_init_once"); static struct stmt_singleton stmt; static MYSQL_BIND in_buf; static MYSQL_BIND out_buf; static STMT_SQL_QUERY(sql_stmt, GET_TOKEN_TYPE); if (stmt.stmt_length == sizeof(GET_TOKEN_TYPE)) return &stmt; memset(&stmt, 0, sizeof(stmt)); init_input_buffer(&stmt, &in_buf, sizeof(in_buf)); init_output_buffer(&stmt, &out_buf, sizeof(out_buf)); stmt.stmt = sql_stmt; stmt.stmt_length = sizeof(GET_TOKEN_TYPE); in_buf.buffer_type = MYSQL_TYPE_STRING; out_buf.buffer_type = MYSQL_TYPE_TINY; return &stmt; }
struct stmt_singleton *get_bridge_owner_context_init_once() { journal_strace("get_bridge_owner_context_init_once"); static struct stmt_singleton stmt; static MYSQL_BIND in_buf; static MYSQL_BIND out_buf; static STMT_SQL_QUERY(sql_stmt, GET_BRIDGE_OWNER_CONTEXT); if (stmt.stmt_length == sizeof(GET_BRIDGE_OWNER_CONTEXT)) return &stmt; memset(&stmt, 0, sizeof(stmt)); init_input_buffer(&stmt, &in_buf, sizeof(in_buf)); init_output_buffer(&stmt, &out_buf, sizeof(out_buf)); stmt.stmt = sql_stmt; stmt.stmt_length = sizeof(GET_BRIDGE_OWNER_CONTEXT); in_buf.buffer_type = MYSQL_TYPE_STRING; out_buf.buffer_type = MYSQL_TYPE_SHORT; return &stmt; }
struct stmt_singleton *get_usr_membership_init_once() { journal_strace("get_usr_membership_init_once"); static struct stmt_singleton stmt; static MYSQL_BIND in_buf; static MYSQL_BIND out_buf; static STMT_SQL_QUERY(sql_stmt, GET_USR_MEMBERSHIP); if (stmt.stmt_length == sizeof(GET_USR_MEMBERSHIP)) return &stmt; memset(&stmt, 0, sizeof(stmt)); init_input_buffer(&stmt, &in_buf, sizeof(in_buf)); init_output_buffer(&stmt, &out_buf, sizeof(out_buf)); stmt.stmt = sql_stmt; stmt.stmt_length = sizeof(GET_USR_MEMBERSHIP); in_buf.buffer_type = MYSQL_TYPE_STRING; out_buf.buffer_type = MYSQL_TYPE_LONG; return &stmt; }
struct stmt_singleton *set_res_hostname_mapping_init_once() { journal_strace("set_res_hostname_mapping_init_once"); static struct stmt_singleton stmt; static MYSQL_BIND in_buf[SET_RES_HOSTNAME_MAPPING_MAXBUF]; static STMT_SQL_QUERY(sql_stmt, SET_RES_HOSTNAME_MAPPING); unsigned int i; if (stmt.stmt_length == sizeof(SET_RES_HOSTNAME_MAPPING)) return &stmt; memset(&stmt, 0, sizeof(stmt)); init_input_buffer(&stmt, &in_buf[0], sizeof(in_buf)); stmt.stmt = sql_stmt; stmt.stmt_length = sizeof(SET_RES_HOSTNAME_MAPPING); for (i = 0; i < SET_RES_HOSTNAME_MAPPING_MAXBUF; ++i) in_buf[i].buffer_type = MYSQL_TYPE_STRING; return &stmt; }
int main(int argc, char *argv[]) { int i, use_ewmh_dock=0; char *action_string = NULL; char *endptr, *fnpre = NULL; /* default values */ dzen.title_win.name = "dzen title"; dzen.slave_win.name = "dzen slave"; dzen.cur_line = 0; dzen.ret_val = 0; dzen.title_win.x = dzen.slave_win.x = 0; dzen.title_win.y = 0; dzen.title_win.width = dzen.slave_win.width = 0; dzen.title_win.alignment = ALIGNCENTER; dzen.slave_win.alignment = ALIGNLEFT; dzen.fnt = FONT; dzen.bg = BGCOLOR; dzen.fg = FGCOLOR; dzen.slave_win.max_lines = 0; dzen.running = True; dzen.xinescreen = 0; dzen.tsupdate = 0; dzen.line_height = 0; dzen.title_win.expand = noexpand; /* Connect to X server */ x_connect(); x_read_resources(); /* cmdline args */ for(i = 1; i < argc; i++) if(!strncmp(argv[i], "-l", 3)){ if(++i < argc) { dzen.slave_win.max_lines = atoi(argv[i]); if(dzen.slave_win.max_lines) init_input_buffer(); } } else if(!strncmp(argv[i], "-geometry", 10)) { if(++i < argc) { int t; int tx, ty; unsigned int tw, th; t = XParseGeometry(argv[i], &tx, &ty, &tw, &th); if(t & XValue) dzen.title_win.x = tx; if(t & YValue) { dzen.title_win.y = ty; if(!ty && (t & YNegative)) /* -0 != +0 */ dzen.title_win.y = -1; } if(t & WidthValue) dzen.title_win.width = (signed int) tw; if(t & HeightValue) dzen.line_height = (signed int) th; } } else if(!strncmp(argv[i], "-u", 3)){ dzen.tsupdate = True; } else if(!strncmp(argv[i], "-expand", 8)){ if(++i < argc) { switch(argv[i][0]){ case 'l': dzen.title_win.expand = left; break; case 'c': dzen.title_win.expand = both; break; case 'r': dzen.title_win.expand = right; break; default: dzen.title_win.expand = noexpand; } } } else if(!strncmp(argv[i], "-p", 3)) { dzen.ispersistent = True; if (i+1 < argc) { dzen.timeout = strtoul(argv[i+1], &endptr, 10); if(*endptr) dzen.timeout = 0; else i++; } } else if(!strncmp(argv[i], "-ta", 4)) { if(++i < argc) dzen.title_win.alignment = alignment_from_char(argv[i][0]); } else if(!strncmp(argv[i], "-sa", 4)) { if(++i < argc) dzen.slave_win.alignment = alignment_from_char(argv[i][0]); } else if(!strncmp(argv[i], "-m", 3)) { dzen.slave_win.ismenu = True; if(i+1 < argc) { if( argv[i+1][0] == 'v') { ++i; break; } dzen.slave_win.ishmenu = (argv[i+1][0] == 'h') ? ++i, True : False; } } else if(!strncmp(argv[i], "-fn", 4)) { if(++i < argc) dzen.fnt = argv[i]; } else if(!strncmp(argv[i], "-e", 3)) { if(++i < argc) action_string = argv[i]; } else if(!strncmp(argv[i], "-title-name", 12)) { if(++i < argc) dzen.title_win.name = argv[i]; } else if(!strncmp(argv[i], "-slave-name", 12)) { if(++i < argc) dzen.slave_win.name = argv[i]; } else if(!strncmp(argv[i], "-bg", 4)) { if(++i < argc) dzen.bg = argv[i]; } else if(!strncmp(argv[i], "-fg", 4)) { if(++i < argc) dzen.fg = argv[i]; } else if(!strncmp(argv[i], "-x", 3)) { if(++i < argc) dzen.title_win.x = dzen.slave_win.x = atoi(argv[i]); } else if(!strncmp(argv[i], "-y", 3)) { if(++i < argc) dzen.title_win.y = atoi(argv[i]); } else if(!strncmp(argv[i], "-w", 3)) { if(++i < argc) dzen.slave_win.width = atoi(argv[i]); } else if(!strncmp(argv[i], "-h", 3)) { if(++i < argc) dzen.line_height= atoi(argv[i]); } else if(!strncmp(argv[i], "-tw", 4)) { if(++i < argc) dzen.title_win.width = atoi(argv[i]); } else if(!strncmp(argv[i], "-fn-preload", 12)) { if(++i < argc) { fnpre = estrdup(argv[i]); } } #ifdef DZEN_XINERAMA else if(!strncmp(argv[i], "-xs", 4)) { if(++i < argc) dzen.xinescreen = atoi(argv[i]); } #endif else if(!strncmp(argv[i], "-dock", 6)) use_ewmh_dock = 1; else if(!strncmp(argv[i], "-v", 3)) { printf("dzen-"VERSION", (C)opyright 2007-2009 Robert Manea\n"); printf( "Enabled optional features: " #ifdef DZEN_XMP " XPM " #endif #ifdef DZEN_XFT " XFT" #endif #ifdef DZEN_XINERAMA " XINERAMA " #endif "\n" ); return EXIT_SUCCESS; } else eprint("usage: dzen2 [-v] [-p [seconds]] [-m [v|h]] [-ta <l|c|r>] [-sa <l|c|r>]\n" " [-x <pixel>] [-y <pixel>] [-w <pixel>] [-h <pixel>] [-tw <pixel>] [-u]\n" " [-e <string>] [-l <lines>] [-fn <font>] [-bg <color>] [-fg <color>]\n" " [-geometry <geometry string>] [-expand <left|right>] [-dock]\n" " [-title-name <string>] [-slave-name <string>]\n" #ifdef DZEN_XINERAMA " [-xs <screen>]\n" #endif ); if(dzen.tsupdate && !dzen.slave_win.max_lines) dzen.tsupdate = False; if(!dzen.title_win.width) dzen.title_win.width = dzen.slave_win.width; if(!setlocale(LC_ALL, "") || !XSupportsLocale()) puts("dzen: locale not available, expect problems with fonts.\n"); if(action_string) fill_ev_table(action_string); else { if(!dzen.slave_win.max_lines) { char edef[] = "button3=exit:13"; fill_ev_table(edef); } else if(dzen.slave_win.ishmenu) { char edef[] = "enterslave=grabkeys;leaveslave=ungrabkeys;" "button4=scrollup;button5=scrolldown;" "key_Left=scrollup;key_Right=scrolldown;" "button1=menuexec;button3=exit:13;" "key_Escape=ungrabkeys,exit"; fill_ev_table(edef); } else { char edef[] = "entertitle=uncollapse,grabkeys;" "enterslave=grabkeys;leaveslave=collapse,ungrabkeys;" "button1=menuexec;button2=togglestick;button3=exit:13;" "button4=scrollup;button5=scrolldown;" "key_Up=scrollup;key_Down=scrolldown;" "key_Escape=ungrabkeys,exit"; fill_ev_table(edef); } } if((find_event(onexit) != -1) && (setup_signal(SIGTERM, catch_sigterm) == SIG_ERR)) fprintf(stderr, "dzen: error hooking SIGTERM\n"); if((find_event(sigusr1) != -1) && (setup_signal(SIGUSR1, catch_sigusr1) == SIG_ERR)) fprintf(stderr, "dzen: error hooking SIGUSR1\n"); if((find_event(sigusr2) != -1) && (setup_signal(SIGUSR2, catch_sigusr2) == SIG_ERR)) fprintf(stderr, "dzen: error hooking SIGUSR2\n"); if(setup_signal(SIGALRM, catch_alrm) == SIG_ERR) fprintf(stderr, "dzen: error hooking SIGALARM\n"); if(dzen.slave_win.ishmenu && !dzen.slave_win.max_lines) dzen.slave_win.max_lines = 1; x_create_windows(use_ewmh_dock); if(!dzen.slave_win.ishmenu) x_map_window(dzen.title_win.win); else { XMapRaised(dzen.dpy, dzen.slave_win.win); for(i=0; i < dzen.slave_win.max_lines; i++) XMapWindow(dzen.dpy, dzen.slave_win.line[i]); } /* Reposition the window back to where it should be */ XMoveWindow(dzen.dpy,dzen.title_win.win,dzen.title_win.x,dzen.title_win.y); if( fnpre != NULL ) font_preload(fnpre); do_action(onstart); /* main loop */ event_loop(); do_action(onexit); clean_up(); if(dzen.ret_val) return dzen.ret_val; return EXIT_SUCCESS; }
int main(int argc, char *argv[]) { int i; char *action_string = NULL; char *endptr; /* default values */ dzen.cur_line = 0; dzen.ret_val = 0; dzen.title_win.x = dzen.slave_win.x = 0; dzen.title_win.y = 0; dzen.title_win.width = dzen.slave_win.width = 0; dzen.title_win.alignment = ALIGNCENTER; dzen.slave_win.alignment = ALIGNLEFT; dzen.fnt = FONT; dzen.bg = BGCOLOR; dzen.fg = FGCOLOR; dzen.slave_win.max_lines = 0; dzen.running = True; dzen.xinescreen = 0; dzen.tsupdate = 0; dzen.line_height = 0; /* cmdline args */ for(i = 1; i < argc; i++) if(!strncmp(argv[i], "-l", 3)){ if(++i < argc) { dzen.slave_win.max_lines = atoi(argv[i]); init_input_buffer(); } } else if(!strncmp(argv[i], "-u", 3)){ dzen.tsupdate = True; } else if(!strncmp(argv[i], "-p", 3)) { dzen.ispersistent = True; if (i+1 < argc) { dzen.timeout = strtoul(argv[i+1], &endptr, 10); if(*endptr) dzen.timeout = 0; else i++; } } else if(!strncmp(argv[i], "-ta", 4)) { if(++i < argc) dzen.title_win.alignment = argv[i][0]; } else if(!strncmp(argv[i], "-sa", 4)) { if(++i < argc) dzen.slave_win.alignment = argv[i][0]; } else if(!strncmp(argv[i], "-m", 3)) { dzen.slave_win.ismenu = True; if(i+1 < argc) dzen.slave_win.ishmenu = (argv[i+1][0] == 'h') ? ++i, True : False; } else if(!strncmp(argv[i], "-fn", 4)) { if(++i < argc) dzen.fnt = argv[i]; } else if(!strncmp(argv[i], "-e", 3)) { if(++i < argc) action_string = argv[i]; } else if(!strncmp(argv[i], "-bg", 4)) { if(++i < argc) dzen.bg = argv[i]; } else if(!strncmp(argv[i], "-fg", 4)) { if(++i < argc) dzen.fg = argv[i]; } else if(!strncmp(argv[i], "-x", 3)) { if(++i < argc) dzen.title_win.x = dzen.slave_win.x = atoi(argv[i]); } else if(!strncmp(argv[i], "-y", 3)) { if(++i < argc) dzen.title_win.y = atoi(argv[i]); } else if(!strncmp(argv[i], "-w", 3)) { if(++i < argc) dzen.slave_win.width = atoi(argv[i]); } else if(!strncmp(argv[i], "-h", 3)) { if(++i < argc) dzen.line_height= atoi(argv[i]); } else if(!strncmp(argv[i], "-tw", 4)) { if(++i < argc) dzen.title_win.width = atoi(argv[i]); } #ifdef DZEN_XINERAMA else if(!strncmp(argv[i], "-xs", 4)) { if(++i < argc) dzen.xinescreen = atoi(argv[i]); } #endif else if(!strncmp(argv[i], "-v", 3)) eprint("dzen-"VERSION", (C)opyright 2007 Robert Manea\n"); else eprint("usage: dzen2 [-v] [-p [seconds]] [-m [v|h]] [-ta <l|c|r>] [-sa <l|c|r>]\n" " [-x <pixel>] [-y <pixel>] [-w <pixel>] [-tw <pixel>] [-u] \n" " [-e <string>] [-l <lines>] [-fn <font>] [-bg <color>] [-fg <color>]\n" #ifdef DZEN_XINERAMA " [-xs <screen>]\n" #endif ); if(dzen.tsupdate && !dzen.slave_win.max_lines) dzen.tsupdate = False; if(!dzen.title_win.width) dzen.title_win.width = dzen.slave_win.width; if(!setlocale(LC_ALL, "") || !XSupportsLocale()) puts("dzen: locale not available, expect problems with fonts.\n"); if(action_string) fill_ev_table(action_string); else { if(!dzen.slave_win.max_lines) { char edef[] = "button3=exit:13"; fill_ev_table(edef); } else if(dzen.slave_win.ishmenu) { char edef[] = "enterslave=grabkeys;leaveslave=ungrabkeys;" "button4=scrollup;button5=scrolldown;" "key_Left=scrollup;key_Right=scrolldown;" "button1=menuexec;button3=exit:13;" "key_Escape=ungrabkeys,exit"; fill_ev_table(edef); } else { char edef[] = "entertitle=uncollapse,grabkeys;" "enterslave=grabkeys;leaveslave=collapse,ungrabkeys;" "button1=menuexec;button2=togglestick;button3=exit:13;" "button4=scrollup;button5=scrolldown;" "key_Up=scrollup;key_Down=scrolldown;" "key_Escape=ungrabkeys,exit"; fill_ev_table(edef); } } if((find_event(onexit) != -1) && (setup_signal(SIGTERM, catch_sigterm) == SIG_ERR)) fprintf(stderr, "dzen: error hooking SIGTERM\n"); if((find_event(sigusr1) != -1) && (setup_signal(SIGUSR1, catch_sigusr1) == SIG_ERR)) fprintf(stderr, "dzen: error hooking SIGUSR1\n"); if((find_event(sigusr2) != -1) && (setup_signal(SIGUSR2, catch_sigusr2) == SIG_ERR)) fprintf(stderr, "dzen: error hooking SIGUSR2\n"); if(setup_signal(SIGALRM, catch_alrm) == SIG_ERR) fprintf(stderr, "dzen: error hooking SIGALARM\n"); set_alignment(); if(dzen.slave_win.ishmenu && !dzen.slave_win.max_lines) dzen.slave_win.max_lines = 1; x_create_windows(); if(!dzen.slave_win.ishmenu) x_map_window(dzen.title_win.win); else { XMapRaised(dzen.dpy, dzen.slave_win.win); for(i=0; i < dzen.slave_win.max_lines; i++) XMapWindow(dzen.dpy, dzen.slave_win.line[i]); } do_action(onstart); /* main loop */ event_loop(); do_action(onexit); clean_up(); if(dzen.ret_val) return dzen.ret_val; return EXIT_SUCCESS; }
int main() { int input[MAX_INPUT_LENGTH]; init_input_buffer(input); read_input(input); literal_state = NOT_IN_LITERAL; comment_state = NOT_IN_COMMENT; current_char = '\0'; next_char = '\0'; int line_number = 1; int char_number = 0; int num_parens = 0; int num_brackets = 0; int num_braces = 0; bool string_escaped = false; bool char_escaped = false; for (int i = 0; input[i] != '\0' && i < MAX_INPUT_LENGTH; ++i) { current_char = input[i]; next_char = ((i == MAX_INPUT_LENGTH - 1) ? '\0' : input[i + 1]); ++char_number; if (current_char == '\n') { ++line_number; char_number = 0; continue; } if (in_code()) { if (start_of_single_line_comment()) { comment_state = IN_SINGLE_LINE_COMMENT; } else if (start_of_multi_line_comment()) { comment_state = IN_MULTI_LINE_COMMENT; } else if (current_char == OPEN_PARENTHESIS) { ++num_parens; } else if (current_char == CLOSE_PARENTHESIS) { --num_parens; print_error_ln_if(line_number, char_number, "too many closing parentheses", num_parens < 0); } else if (current_char == OPEN_BRACE) { ++num_braces; } else if (current_char == CLOSE_BRACE) { --num_braces; print_error_ln_if(line_number, char_number, "too many closing braces", num_braces < 0); } else if (current_char == OPEN_BRACKET) { ++num_brackets; } else if (current_char == CLOSE_BRACKET) { --num_brackets; print_error_ln_if(line_number, char_number, "too many closing brackets", num_brackets < 0); } else if (current_char == '\"') { literal_state = IN_STRING; } else if (current_char == '\'') { literal_state = IN_CHARACTER; } } else if (in_single_line_comment()) { if (current_char == '\n') { comment_state = NOT_IN_COMMENT; } } else if (in_multi_line_comment()) { if (end_of_multi_line_comment()) { comment_state = NOT_IN_COMMENT; } } else if (in_string()) { if (current_char == '\\') { string_escaped = !string_escaped; } else if (current_char == '\"' && !string_escaped) { literal_state = NOT_IN_LITERAL; } } else if (in_character()) { if (current_char == '\\') { char_escaped = !char_escaped; } else if (current_char == '\'' && !char_escaped) { literal_state = NOT_IN_LITERAL; } } } print_error_if("parentheses are not balanced", num_parens != 0); print_error_if("braces are not balanced", num_braces != 0); print_error_if("brackets are not balanced", num_brackets != 0); return 0; }