~ chicken-core (chicken-5) 54ea5a7d1a98d74a9a815091c41f9d828792f3cb
commit 54ea5a7d1a98d74a9a815091c41f9d828792f3cb Author: Evan Hanson <evhan@foldling.org> AuthorDate: Mon Jan 18 21:03:26 2016 +1300 Commit: Evan Hanson <evhan@foldling.org> CommitDate: Tue Mar 8 22:52:33 2016 +1300 Rename [un]setenv -> [un]set-environment-variable! diff --git a/manual/Unit posix b/manual/Unit posix index 9aaf3d76..b0a04ff7 100644 --- a/manual/Unit posix +++ b/manual/Unit posix @@ -1018,17 +1018,17 @@ These variables contain signal codes for use with {{process-signal}}, {{set-sig Returns a association list of the environment variables and their current values (see also [[http://srfi.schemers.org/srfi-98/|SRFI-98]]). -==== setenv +==== set-environment-variable! -<procedure>(setenv VARIABLE VALUE)</procedure> +<procedure>(set-environment-variable! VARIABLE VALUE)</procedure> Sets the environment variable named {{VARIABLE}} to {{VALUE}}. Both arguments should be strings. If the variable is not defined in the environment, a new definition is created. -==== unsetenv +==== unset-environment-variable! -<procedure>(unsetenv VARIABLE)</procedure> +<procedure>(unset-environment-variable! VARIABLE)</procedure> Removes the definition of the environment variable {{VARIABLE}} from the environment of the current process. If the variable is not defined, @@ -1330,13 +1330,13 @@ not be obtained. On Windows, this procedure always returns {{0}}, ; {{set-group-id!}} : {{setgid}} ; {{set-user-id!}} : {{setuid}} ; {{set-root-directory!}} : {{chroot}} -; {{setenv}} : {{setenv/putenv}} +; {{set-environment-variable!}} : {{setenv/putenv}} ; {{sleep}} : {{sleep}} ; {{system-information}} : {{uname}} ; {{terminal-name}} : {{ttyname}} ; {{terminal-port?}} : {{isatty}} ; {{time->string}} : {{asctime}} -; {{unsetenv}} : {{putenv}} +; {{unset-environment-variable!}} : {{unsetenv/putenv}} ; {{user-information}} : {{getpwnam/getpwuid}} ; {{utc-time->seconds}} : {{timegm}} diff --git a/posix-common.scm b/posix-common.scm index 9ccadcdf..c3a9bfe6 100644 --- a/posix-common.scm +++ b/posix-common.scm @@ -629,16 +629,19 @@ EOF ;;; Environment access: -(define setenv +(define set-environment-variable! (lambda (var val) - (##sys#check-string var 'setenv) - (##sys#check-string val 'setenv) - (##core#inline "C_setenv" (##sys#make-c-string var 'setenv) (##sys#make-c-string val 'setenv)) + (##sys#check-string var 'set-environment-variable!) + (##sys#check-string val 'set-environment-variable!) + (##core#inline "C_setenv" + (##sys#make-c-string var 'set-environment-variable!) + (##sys#make-c-string val 'set-environment-variable!)) (##core#undefined) ) ) -(define (unsetenv var) - (##sys#check-string var 'unsetenv) - (##core#inline "C_unsetenv" (##sys#make-c-string var 'unsetenv)) +(define (unset-environment-variable! var) + (##sys#check-string var 'unset-environment-variable!) + (##core#inline "C_unsetenv" + (##sys#make-c-string var 'unset-environment-variable!)) (##core#undefined) ) (define get-environment-variables diff --git a/posixunix.scm b/posixunix.scm index 5773fc7d..2e596202 100644 --- a/posixunix.scm +++ b/posixunix.scm @@ -74,7 +74,7 @@ read-symbolic-link regular-file? seconds->local-time seconds->string seconds->utc-time seek/cur seek/end seek/set set-alarm! set-buffering-mode! set-groups! set-root-directory! - set-signal-handler! set-signal-mask! setenv signal-handler + set-signal-handler! set-signal-mask! signal-handler signal-mask signal-mask! signal-masked? signal-unmask! signal/abrt signal/alrm signal/break signal/chld signal/cont signal/fpe signal/bus signal/hup signal/ill signal/int signal/io signal/kill @@ -83,7 +83,8 @@ signal/usr2 signal/vtalrm signal/winch signal/xcpu signal/xfsz signals-list sleep block-device? character-device? fifo? socket? string->time symbolic-link? system-information terminal-name - terminal-port? terminal-size time->string unsetenv user-information + terminal-port? terminal-size time->string user-information + set-environment-variable! unset-environment-variable! utc-time->seconds with-input-from-pipe with-output-to-pipe) (import scheme chicken) diff --git a/posixwin.scm b/posixwin.scm index d811825e..22e3e0d6 100644 --- a/posixwin.scm +++ b/posixwin.scm @@ -699,7 +699,7 @@ EOF read-symbolic-link regular-file? seconds->local-time seconds->string seconds->utc-time seek/cur seek/end seek/set set-alarm! set-buffering-mode! set-groups! set-root-directory! - set-signal-handler! set-signal-mask! setenv signal-handler + set-signal-handler! set-signal-mask! signal-handler signal-mask signal-mask! signal-masked? signal-unmask! signal/abrt signal/alrm signal/break signal/chld signal/cont signal/fpe #;signal/bus signal/hup signal/ill signal/int signal/io signal/kill @@ -708,7 +708,8 @@ EOF signal/usr2 signal/vtalrm signal/winch signal/xcpu signal/xfsz signals-list sleep block-device? character-device? fifo? socket? string->time symbolic-link? system-information terminal-name - terminal-port? terminal-size time->string unsetenv user-information + terminal-port? terminal-size time->string user-information + set-environment-variable! unset-environment-variable! utc-time->seconds with-input-from-pipe with-output-to-pipe) (import scheme chicken) diff --git a/tests/posix-tests.scm b/tests/posix-tests.scm index 95f2c846..e7c456b6 100644 --- a/tests/posix-tests.scm +++ b/tests/posix-tests.scm @@ -23,8 +23,8 @@ (delete-file* tnpfilpn) ) ) ) (assert-error (get-environment-variable "with\x00embedded-NUL")) -(assert-error (setenv "with\x00embedded-NUL" "blabla")) -(assert-error (setenv "blabla" "with\x00embedded-NUL")) +(assert-error (set-environment-variable! "with\x00embedded-NUL" "blabla")) +(assert-error (set-environment-variable! "blabla" "with\x00embedded-NUL")) (assert-error (system "echo this is \x00 not okay")) ;; Use "false" to signal to the calling script that there was an error, ;; even if the process will get called @@ -51,8 +51,8 @@ (assert (not (directory-exists? tmp-dot))) (assert (not (directory-exists? tmp-dir)))) -;; unsetenv -(setenv "FOO" "bar") +;; unset-environment-variable! +(set-environment-variable! "FOO" "bar") (assert (equal? (get-environment-variable "FOO") "bar")) -(unsetenv "FOO") +(unset-environment-variable! "FOO") (assert (not (get-environment-variable "FOO"))) diff --git a/types.db b/types.db index 4ab602a5..7a4e7438 100644 --- a/types.db +++ b/types.db @@ -2001,7 +2001,7 @@ (chicken.posix#set-root-directory! (#(procedure #:clean #:enforce) chicken.posix#set-root-directory! (string) undefined)) (chicken.posix#set-signal-handler! (#(procedure #:clean #:enforce) chicken.posix#set-signal-handler! (fixnum (or false (procedure (fixnum) . *))) undefined)) (chicken.posix#set-signal-mask! (#(procedure #:clean #:enforce) chicken.posix#set-signal-mask! ((list-of fixnum)) undefined)) -(chicken.posix#setenv (#(procedure #:clean #:enforce) chicken.posix#setenv (string string) undefined)) +(chicken.posix#set-environment-variable! (#(procedure #:clean #:enforce) chicken.posix#set-environment-variable! (string string) undefined)) (chicken.posix#signal-handler (#(procedure #:clean #:enforce) chicken.posix#signal-handler (fixnum) (or false (procedure (fixnum) . *)))) (chicken.posix#signal-mask (#(procedure #:clean) chicken.posix#signal-mask () fixnum)) (chicken.posix#signal-mask! (#(procedure #:clean #:enforce) chicken.posix#signal-mask! (fixnum) undefined)) @@ -2047,7 +2047,7 @@ (chicken.posix#terminal-size (#(procedure #:clean #:enforce) chicken.posix#terminal-size (port) fixnum fixnum)) (chicken.posix#time->string (#(procedure #:clean #:enforce) chicken.posix#time->string ((vector fixnum fixnum fixnum fixnum fixnum fixnum fixnum fixnum boolean fixnum) #!optional string) string)) (chicken.posix#unmap-file-from-memory (#(procedure #:clean #:enforce) chicken.posix#unmap-file-from-memory ((struct mmap) #!optional fixnum) undefined)) -(chicken.posix#unsetenv (#(procedure #:clean #:enforce) chicken.posix#unsetenv (string) undefined)) +(chicken.posix#unset-environment-variable! (#(procedure #:clean #:enforce) chicken.posix#unset-environment-variable! (string) undefined)) (chicken.posix#user-information (#(procedure #:clean #:enforce) chicken.posix#user-information ((or string fixnum) #!optional *) *)) (chicken.posix#utc-time->seconds (#(procedure #:clean #:enforce) chicken.posix#utc-time->seconds ((vector fixnum fixnum fixnum fixnum fixnum fixnum fixnum fixnum boolean fixnum)) integer)) (chicken.posix#with-input-from-pipe (#(procedure #:enforce) chicken.posix#with-input-from-pipe (string (procedure () . *) #!optional symbol) . *))Trap