Mercurial > ~mikael > mcabber > hg
view mcabber/src/hooks.h @ 1497:35020a2ed115
Do not use srand()/rand() if better alternatives exist (mirabilos)
arc4random(3) is a self-seeding PRNG available on a lot of OSes (all BSDs,
Darwin / Mac OSX, Interix / Microsoft® Services for Unix, Windows® 2003SR1,
Windows® Vista, Debian with the new libbsd package installed, ???) and much
better than srand(3)/rand(3).
Thanks to GNU autoconf, this can be made portable.
http://www.mirbsd.org/man/arc4random.3
//mirabilos
author | Mikael Berthe <mikael@lilotux.net> |
---|---|
date | Mon, 30 Jun 2008 23:13:50 +0200 |
parents | 7b36b91a4388 |
children | a087125d8fc8 |
line wrap: on
line source
#ifndef __HOOKS_H__ #define __HOOKS_H__ 1 #include <time.h> #include "jabglue.h" // These two defines are used by hk_message_{in,out} arguments #define ENCRYPTED_PGP 1 #define ENCRYPTED_OTR 2 void hk_mainloop(void); void hk_message_in(const char *bjid, const char *resname, time_t timestamp, const char *msg, const char *type, guint encrypted); void hk_message_out(const char *bjid, const char *nickname, time_t timestamp, const char *msg, guint encrypted); void hk_statuschange(const char *bjid, const char *resname, gchar prio, time_t timestamp, enum imstatus status, char const *status_msg); void hk_mystatuschange(time_t timestamp, enum imstatus old_status, enum imstatus new_status, const char *msg); void hook_execute_internal(const char *hookname); void hk_ext_cmd_init(const char *command); void hk_ext_cmd(const char *bjid, guchar type, guchar info, const char *data); #endif /* __HOOKS_H__ */ /* vim: set expandtab cindent cinoptions=>2\:2(0: For Vim users... */