;;;;
;;;; Copyright (c) 2002 Kevin M. Rosenberg
;;;;
-;;;; $Id: getenv.cl,v 1.3 2002/03/10 04:15:33 kevin Exp $
+;;;; $Id: getenv.cl,v 1.5 2002/03/10 11:13:07 kevin Exp $
;;;;
;;;; This file is part of UFFI.
;;;;
(uffi:def-function ("getenv" c-getenv)
- ((name :c-string))
- :returning :c-string)
+ ((name :cstring))
+ :returning :cstring)
-(defun getenv (key)
+(defun my-getenv (key)
"Returns an environment variable, or NIL if it does not exist"
(check-type key string)
- (uffi:with-c-string (key-native key)
- (let ((value-c-string (c-getenv key-native)))
- (uffi:convert-from-c-string value-c-string))))
+ (uffi:with-cstring (key-native key)
+ (let ((value-cstring (c-getenv key-native)))
+ (uffi:convert-from-cstring value-cstring))))
-(format t "~&Environment value for USER key: ~A" (getenv "USER"))
-(format t "~&Environment value for _FOO_ key: ~A" (getenv "_FOO_"))
-
#+test-uffi
(progn
(flet ((print-results (str)
- (format t "~&(getenv ~S) => ~S" str (getenv str))))
+ (format t "~&(getenv ~S) => ~S" str (my-getenv str))))
(print-results "USER")
(print-results "_FOO_")))