X-Git-Url: http://mj.ucw.cz/gitweb/?a=blobdiff_plain;f=umpf.c;h=b8c2cd9effe94c6a194ef68dc2451d29e6ece128;hb=8628def3891660a2ebfce358dc65cf6b0f0a92d1;hp=ab73285948a50ed8abacb53cbdc7bb8f63f34748;hpb=80e68c40229bccd38ec4d89737c4cae6ecb41e7c;p=umpf.git diff --git a/umpf.c b/umpf.c index ab73285..b8c2cd9 100644 --- a/umpf.c +++ b/umpf.c @@ -1,4 +1,5 @@ #include +#include #include #include "umpf.h" @@ -11,21 +12,24 @@ init(void) const_tab = xmalloc(BUFSIZE); cur_const_n = 1; cur_const_s = BUFSIZE; + empty = ""; } int main(int argc, char** argv) { int res; + int i; -/* //FIXME: + if (argc < 2) + die("Usage: ./umpf conf_file [default_mailbox]"); + struct passwd* p; p = getpwuid(getuid()); - char* default_mbox = cat("/var/mail/", p->pw_name); - get_default_mailbox(default_mbox); -*/ - if (argc < 2) - die("Usage: ./umpf conf_file"); + if (argc < 3) + default_mailbox = cat("/var/mail/", p->pw_name); + else + default_mailbox = argv[2]; save_gids(); read_conf(argv[1]); @@ -39,15 +43,18 @@ main(int argc, char** argv) temp_varcode_start = current_varcode; compile(input_tree, NULL); - print_code(); + var_tab = xmalloc((max_varcode + 1) * sizeof(char*)); + for (i = 0; i <= max_varcode; i++) { + var_tab[i] = empty; + } -// var_hash = new_var_hash(); -// current_headers = make_hlist(); -// current_body = get_body(); + current_headers = make_hlist(0); // print_headers(current_headers); -// save_current_headers(var_hash); -// interp(input_tree, var_hash); -// print_vars(var_hash); + current_body = get_body(0); + save_current_headers(var_hash); + set_cur_mail_length_var(curr_email_len, var_hash); + + interp(&input_code, var_hash); return 0; }