((time (* time-t)))
:returning time-t)
-(uffi:def-function ("gmtime" c-gmtime)
+(uffi:def-function "gmtime"
((time (* time-t)))
:returning (* tm))
+(uffi:def-function "asctime"
+ ((time (* tm)))
+ :returning :cstring)
+
(uffi:def-type time-t :unsigned-long)
(uffi:def-type tm-pointer (* tm))
(deftest time.2
(uffi:with-foreign-object (time 'time-t)
(setf (uffi:deref-pointer time :unsigned-long) 7381)
- (let ((tm-ptr (the tm-pointer (c-gmtime time))))
+ (let ((tm-ptr (the tm-pointer (gmtime time))))
(values (1+ (uffi:get-slot-value tm-ptr 'tm 'mon))
(uffi:get-slot-value tm-ptr 'tm 'mday)
(+ 1900 (uffi:get-slot-value tm-ptr 'tm 'year))
(zerop res2))))
t)
-(defun posix-time-to-localtime-string (secs)
+(defun posix-time-to-asctime (secs)
"Converts number of seconds elapsed since 00:00:00 on January 1, 1970, Coordinated Universal Time (UTC)"
(string-right-trim
'(#\newline #\return)
(uffi:convert-from-cstring
(uffi:with-foreign-object (time 'time-t)
- (setf (uffi:deref-pointer time :unsigned-long)
- secs)
- (c-time time)))))
+ (setf (uffi:deref-pointer time :unsigned-long) secs)
+ (asctime (gmtime time))))))
+(deftest time.3
+ (posix-time-to-asctime 0)
+ "Thu Jan 1 00:00:00 1970")