Return to random_plugin.h CVS log | Up to [ELWIX - Embedded LightWeight unIX -] / embedaddon / strongswan / src / libstrongswan / plugins / random |
1.1 misho 1: /* 2: * Copyright (C) 2008 Martin Willi 3: * HSR Hochschule fuer Technik Rapperswil 4: * 5: * This program is free software; you can redistribute it and/or modify it 6: * under the terms of the GNU General Public License as published by the 7: * Free Software Foundation; either version 2 of the License, or (at your 8: * option) any later version. See <http://www.fsf.org/copyleft/gpl.txt>. 9: * 10: * This program is distributed in the hope that it will be useful, but 11: * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY 12: * or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License 13: * for more details. 14: */ 15: 16: /** 17: * @defgroup random_p random 18: * @ingroup plugins 19: * 20: * @defgroup random_plugin random_plugin 21: * @{ @ingroup random_p 22: */ 23: 24: #ifndef RANDOM_PLUGIN_H_ 25: #define RANDOM_PLUGIN_H_ 26: 27: #include <plugins/plugin.h> 28: 29: typedef struct random_plugin_t random_plugin_t; 30: 31: /** 32: * Plugin implementing a RNG reading from /dev/[u]random. 33: */ 34: struct random_plugin_t { 35: 36: /** 37: * implements plugin interface 38: */ 39: plugin_t plugin; 40: }; 41: 42: /** 43: * Get the /dev/random file descriptor 44: */ 45: int random_plugin_get_dev_random(); 46: 47: /** 48: * Get the /dev/urandom file descriptor 49: */ 50: int random_plugin_get_dev_urandom(); 51: 52: /** 53: * Must strong randomness be equivalent to true randomness? 54: */ 55: bool random_plugin_get_strong_equals_true(); 56: 57: #endif /** RANDOM_PLUGIN_H_ @}*/