X-Git-Url: https://the.earth.li/gitweb/?a=blobdiff_plain;f=keyd.h;h=1ea601c82777af9de57ecc039578f0e8b4e1b5b3;hb=5719b2b50c87d77e4ed1cc054f000845fc9aa8cc;hp=915b1b64385978c6b1268727eb4fec340f46bd1a;hpb=5e1b22d763640c4d7a09d07920403d8d491b4410;p=onak.git diff --git a/keyd.h b/keyd.h index 915b1b6..1ea601c 100644 --- a/keyd.h +++ b/keyd.h @@ -1,5 +1,6 @@ -/* - * keyd.h - Public API for keyd. +/** + * @file keyd.h + * @brief Public API for keyd. * * Copyright 2004,2011 Jonathan McDowell * @@ -13,8 +14,7 @@ * more details. * * You should have received a copy of the GNU General Public License along with - * this program; if not, write to the Free Software Foundation, Inc., 51 - * Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. + * this program. If not, see . */ #ifndef __KEYD_H__ @@ -22,34 +22,54 @@ #include +/** + * @brief The name of the keyd Unix domain socket + */ #define KEYD_SOCKET "keyd.sock" +/** + * @brief keyd commands + */ enum keyd_ops { KEYD_CMD_UNKNOWN = 0, KEYD_CMD_VERSION = 1, - KEYD_CMD_GET, + KEYD_CMD_GET_ID, KEYD_CMD_STORE, KEYD_CMD_DELETE, - KEYD_CMD_GETTEXT, + KEYD_CMD_GET_TEXT, KEYD_CMD_GETFULLKEYID, KEYD_CMD_KEYITER, KEYD_CMD_CLOSE, KEYD_CMD_QUIT, KEYD_CMD_STATS, - KEYD_CMD_GETSKSHASH, + KEYD_CMD_GET_SKSHASH, + KEYD_CMD_GET_FP, + KEYD_CMD_UPDATE, KEYD_CMD_LAST /* Placeholder */ }; +/** + * @brief Reply codes for keyd commands + */ enum keyd_reply { KEYD_REPLY_OK = 0, KEYD_REPLY_UNKNOWN_CMD = 1 }; -static uint32_t keyd_version = 3; +/** + * @brief Version of the keyd protocol currently supported + */ +static const uint32_t keyd_version = 5; +/** + * @brief Response structure for the @a KEYD_CMD_STATS response + */ struct keyd_stats { + /** Unix time of when the keyd daemon was started */ time_t started; + /** Number of connects we've seen to keyd */ uint32_t connects; + /** Count of the number of times each command has been used */ uint32_t command_stats[KEYD_CMD_LAST]; };