Author: delphij
Date: Mon Sep 29 21:45:57 2014
New Revision: 272288
URL: http://svnweb.freebsd.org/changeset/base/272288

Log:
  When setting environment variables in the atrun script, use the
  "export foo=bar" form instead of "foo=bar; export foo" since the
  former allows the shell to catch variable names that are not valid
  shell identifiers.  This will cause /bin/sh to exit with an error
  (which gets mailed to the at user) and it will not run the script.
  
  Obtained from:        OpenBSD (r1.63 millert)
  MFC after:    3 days

Modified:
  head/usr.bin/at/at.c

Modified: head/usr.bin/at/at.c
==============================================================================
--- head/usr.bin/at/at.c        Mon Sep 29 19:54:17 2014        (r272287)
+++ head/usr.bin/at/at.c        Mon Sep 29 21:45:57 2014        (r272288)
@@ -367,6 +367,7 @@ writefile(time_t runtimer, char queue)
 
        if (export)
        {
+           (void)fputs("export ", fp);
            fwrite(*atenv, sizeof(char), eqp-*atenv, fp);
            for(ap = eqp;*ap != '\0'; ap++)
            {
@@ -389,7 +390,6 @@ writefile(time_t runtimer, char queue)
                    fputc(*ap, fp);
                }
            }
-           fputs("; export ", fp);
            fwrite(*atenv, sizeof(char), eqp-*atenv -1, fp);
            fputc('\n', fp);
            
_______________________________________________
svn-src-all@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/svn-src-all
To unsubscribe, send any mail to "svn-src-all-unsubscr...@freebsd.org"

Reply via email to