[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: make-string uninitialized memory eposure considered harmful
From: |
Mikael Djurfeldt |
Subject: |
Re: make-string uninitialized memory eposure considered harmful |
Date: |
Sat, 11 Jan 2003 12:41:44 +0100 |
User-agent: |
Gnus/5.090008 (Oort Gnus v0.08) Emacs/21.2 (i386-pc-linux-gnu) |
Egil Moeller <address@hidden> writes:
> one might think of a situation when one would like to be able to
> create a string (or other object?) that, when garbage-collected, was
> guaranteed to be overwritten with 0's. Is this doable?
(define-module (utils self-destruct)
#:export (make-self-destructing-string))
(define guard-string (make-guardian))
(define (make-self-destructing-string k)
(let ((s (make-string k)))
(guard-string s)
s))
(define (destroy-strings)
(cond ((guard-string)
=>
(lambda (s)
(string-fill! s #\nul)
(destroy-strings)))))
(add-hook! after-gc-hook destroy-strings)
M