/[mailutils]/mailutils/mail/var.c
ViewVC logotype

Diff of /mailutils/mail/var.c

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 1.7 by gray, Thu Jan 17 22:30:55 2002 UTC revision 1.8 by gray, Wed Aug 7 15:29:24 2002 UTC
# Line 30  static int var_check_args (int argc, cha Line 30  static int var_check_args (int argc, cha
30  {  {
31    if (argc == 1)    if (argc == 1)
32      {      {
33        util_error ("%c%s requires an argument",        char *escape = "~";
34                     util_find_env ("escape")->value[0], argv[0]);        util_getenv (&escape, "escape", Mail_env_string, 0);
35          util_error ("%c%s requires an argument", escape[0], argv[0]);
36        return 1;        return 1;
37      }      }
38    return 0;    return 0;
# Line 102  var_help(int argc, char **argv, struct s Line 103  var_help(int argc, char **argv, struct s
103  int  int
104  var_sign(int argc, char **argv, struct send_environ *env)  var_sign(int argc, char **argv, struct send_environ *env)
105  {  {
106    struct mail_env_entry *p;    char *p;
107    
108    (void)argc; (void)env;    (void)argc; (void)env;
109    
110    if (isupper(argv[0][0]))    if (util_getenv (&p, isupper (argv[0][0]) ? "Sign" : "sign",
111      p = util_find_env("Sign");                     Mail_env_string, 1) == 0)
   else  
     p = util_find_env("sign");  
   if (p->set)  
112      {      {
113        if (isupper(argv[0][0]))        if (isupper (argv[0][0]))
114          {          {
115            char *name = util_fullpath(p->value);            char *name = util_fullpath (p);
116            FILE *fp = fopen(name, "r");            FILE *fp = fopen(name, "r");
117            char *buf = NULL;            char *buf = NULL;
118            size_t n = 0;            size_t n = 0;
# Line 134  var_sign(int argc, char **argv, struct s Line 132  var_sign(int argc, char **argv, struct s
132            free(name);            free(name);
133          }          }
134        else        else
135          fprintf(ofile, "%s", p->value);          fprintf(ofile, "%s", p);
136        var_continue();        var_continue();
137      }      }
   else  
     util_error("\"sign\" not set");  
138    return 0;    return 0;
139  }  }
140    
# Line 232  var_headers(int argc, char **argv, struc Line 228  var_headers(int argc, char **argv, struc
228    
229  /* ~i[var-name] */  /* ~i[var-name] */
230  int  int
231  var_insert(int argc, char **argv, struct send_environ *env)  var_insert (int argc, char **argv, struct send_environ *env)
232  {  {
233      struct mail_env_entry *env;
234      
235    (void)env;    (void)env;
236    if (var_check_args (argc, argv))    if (var_check_args (argc, argv))
237      return 1;      return 1;
238    fprintf(ofile, "%s", util_find_env(argv[1])->value);    env = util_find_env (argv[1], 0);
239      if (env)
240        switch (env->type)
241          {
242            case Mail_env_string:
243              fprintf (ofile, "%s", env->value.string);
244              break;
245    
246            case Mail_env_number:
247              fprintf (ofile, "%d", env->value.number);
248              break;
249              
250            case Mail_env_boolean:
251              fprintf (ofile, "%s", env->set ? "yes" : "no");
252              break;
253              
254            default:
255              break;
256         }
257    return 0;    return 0;
258  }  }
259    
# Line 257  var_quote(int argc, char **argv, struct Line 273  var_quote(int argc, char **argv, struct
273        char buffer[512];        char buffer[512];
274        off_t off = 0;        off_t off = 0;
275        size_t n = 0;        size_t n = 0;
276        char *prefix = util_find_env("indentprefix")->value;        char *prefix = "\t";
277    
278        if (mailbox_get_message(mbox, cursor, &mesg) != 0)        if (mailbox_get_message(mbox, cursor, &mesg) != 0)
279          return 1;          return 1;
280    
281        fprintf(stdout, "Interpolating: %d\n", cursor);        fprintf(stdout, "Interpolating: %d\n", cursor);
282    
283          util_getenv(&prefix, "indentprefix", Mail_env_string, 0);
284    
285        if (islower(argv[0][0]))        if (islower(argv[0][0]))
286          {          {
287            size_t i, num = 0;            size_t i, num = 0;

Legend:
Removed from v.1.7  
changed lines
  Added in v.1.8

savannah-hackers-public@gnu.org
ViewVC Help
Powered by ViewVC 1.1.26