|
Message-ID: <0afeace4f8b3a3956c171b90f5ce52f5@smtp.hushmail.com> Date: Mon, 31 Dec 2012 05:07:21 +0100 From: magnum <john.magnum@...hmail.com> To: john-dev@...ts.openwall.com Subject: Re: clear_keys(self) On 31 Dec, 2012, at 4:27 , Solar Designer <solar@...nwall.com> wrote: > On Sun, Dec 30, 2012 at 05:16:50AM +0100, magnum wrote: >> I think we might want to add a "struct fmt_main *self" parameter to clear_keys() for access to self->params.max_keys_per_crypt and other things. Maybe this has alrady been discussed? > No, but the convention has been to only pass the self pointer to > functions that may be called before init(), and to init() itself. The > rest may use a global variable (declared static in the fmt file), which > is either the only format struct or a pointer set by init(). I see > little reason to single out clear_keys(). So I oppose this change. > > What formats would use this? Is this e.g. for sharing of clear_keys() > implementation between several formats (which)? OK, I was just confused. Yes, I was thinking about formats like TC or DragonFly that are several formats in one file. I got the idea it gets tricky without a self pointer but I can't remember the train of thoughts... I probably had this in mind: struct fmt_main some_format; void clear_keys(void) { memset(buffer, 0, some_format.params.plaintext_length * some_format.params.max_keys_per_crypt); } This would not work for multi-format files but like you say I could use a format-global variable if I get in that situation. magnum
Powered by blists - more mailing lists
Confused about mailing lists and their use? Read about mailing lists on Wikipedia and check out these guidelines on proper formatting of your messages.