Mercurial > hg > xemacs-beta
comparison src/lisp.h @ 5892:053ef01b71a8
Import the #'clear-string API from GNU, use it in tls.c
src/ChangeLog addition:
2015-04-18 Aidan Kehoe <kehoea@parhasard.net>
* sequence.c (Fclear_string): New, API from GNU. Zero a string's
contents, making sure the text is not kept around even when the
string's data is reallocated because of a changed character
length.
* sequence.c (syms_of_sequence): Make it available to Lisp.
* lisp.h: Make it available to C code.
* tls.c (nss_pk11_password): Use it.
* tls.c (gnutls_pk11_password): Use it.
* tls.c (openssl_password): Use it.
tests/ChangeLog addition:
2015-04-18 Aidan Kehoe <kehoea@parhasard.net>
* automated/lisp-tests.el:
Test #'clear-string, just added. Unfortunately there's no way to
be certain from Lisp that the old password data has been erased
after realloc; it may be worth adding a test to tests.c, but
*we'll be reading memory we shouldn't be*, so that gives me pause.
author | Aidan Kehoe <kehoea@parhasard.net> |
---|---|
date | Sat, 18 Apr 2015 23:00:14 +0100 |
parents | 750fab17b299 |
children | 23178aa71f8b |
comparison
equal
deleted
inserted
replaced
5890:8704b7957585 | 5892:053ef01b71a8 |
---|---|
5786 Bytecount fast_lisp_string_match (Lisp_Object, Lisp_Object); | 5786 Bytecount fast_lisp_string_match (Lisp_Object, Lisp_Object); |
5787 extern Fixnum warn_about_possibly_incompatible_back_references; | 5787 extern Fixnum warn_about_possibly_incompatible_back_references; |
5788 | 5788 |
5789 /* Defined in sequence.c */ | 5789 /* Defined in sequence.c */ |
5790 EXFUN (Ffill, MANY); | 5790 EXFUN (Ffill, MANY); |
5791 EXFUN (Fclear_string, 1); | |
5791 EXFUN (Freplace, MANY); | 5792 EXFUN (Freplace, MANY); |
5792 | 5793 |
5793 /* Defined in signal.c */ | 5794 /* Defined in signal.c */ |
5794 void init_interrupts_late (void); | 5795 void init_interrupts_late (void); |
5795 | 5796 |