File: stats.h

package info (click to toggle)
ekeyd 1.1.3-3
  • links: PTS
  • area: main
  • in suites: squeeze
  • size: 628 kB
  • ctags: 859
  • sloc: ansic: 5,189; sh: 271; makefile: 199; perl: 148
file content (57 lines) | stat: -rw-r--r-- 2,201 bytes parent folder | download | duplicates (5)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
/* daemon/stats.h
 *
 * Interface to Entropy Key statistics
 *
 * Copyright 2009 Simtec Electronics
 *
 * For licence terms refer to the COPYING file.
 */

#ifndef DAEMON_STATS_H
#define DAEMON_STATS_H

/** Unified statistics. */
typedef struct {
    uint64_t stream_bytes_read; /**< Number of bytes read from the stream. */
    uint64_t stream_bytes_written; /**< Number of bytes written to the stream. */

    uint64_t frame_byte_last; /**< Index of begining of last correct frame. */
    uint32_t frame_framing_errors; /**< Number of framing errors. */
    uint32_t frame_frames_ok; /**< Number of valid frames. */

    uint32_t pkt_error; /**< Number of packets with an error. */
    uint32_t pkt_ok; /**< Number of ok packets. */

    time_t con_start; /**< Time the connection was started. */

    uint32_t con_pkts; /**< Number of processed packets. */
    uint32_t con_reset; /**< The number of times the connection has encounterd a reset condition. */
    uint32_t con_nonces; /**< The number of times a nonce has been sent. */
    uint32_t con_rekeys; /**< The number of times the session key has been set. */
    uint64_t con_entropy; /**< The number of bytes of entropy recived. */

    int key_temp; /**< Last reported key temerature in deci-kelvin. */
    int key_voltage; /**< Last internal supply voltage reported by key. */
    char key_badness; /**< badness indicator \see control.lua */

    uint32_t fips_frame_rate; /**< Number of fips frames generated. */

    uint32_t key_raw_entl; /**< raw estimated shanons per bit of left input. */
    uint32_t key_raw_entr; /**< raw estimated shanons per bit of right input. */
    uint32_t key_raw_entx; /**< raw estimated shanons per bit after xor. */

    uint32_t key_dbsd_entl; /**< debiased shanons per bit of left input. */
    uint32_t key_dbsd_entr; /**< debiased shanons per bit of right input. */

} connection_stats_t;

/** Create a unified statistics structure from an entropy key connection state.
 *
 * @note The returned structure must be freed by the caller.
 *
 * @param ekey The connection context.
 * @return A statistics structure.
 */
connection_stats_t *get_key_stats(OpaqueEkey *ekey);

#endif /* DAEMON_STATS_H */