diff options
author | sam <sam@FreeBSD.org> | 2009-03-02 02:23:47 +0000 |
---|---|---|
committer | sam <sam@FreeBSD.org> | 2009-03-02 02:23:47 +0000 |
commit | 2af41b09fa9d6ff3f4c736a224f545663be143d2 (patch) | |
tree | dafc9df301d15cbf876d2639326ce6bf658e6dea /contrib/wpa/src/eap_server/tncs.h | |
parent | 5d319a10b1559b57e7042e8c644949049d7c0c56 (diff) | |
parent | ced3a3de988600636bda6479d27de8823307f171 (diff) | |
download | FreeBSD-src-2af41b09fa9d6ff3f4c736a224f545663be143d2.zip FreeBSD-src-2af41b09fa9d6ff3f4c736a224f545663be143d2.tar.gz |
connect vendor wpa area to contrib
Diffstat (limited to 'contrib/wpa/src/eap_server/tncs.h')
-rw-r--r-- | contrib/wpa/src/eap_server/tncs.h | 49 |
1 files changed, 49 insertions, 0 deletions
diff --git a/contrib/wpa/src/eap_server/tncs.h b/contrib/wpa/src/eap_server/tncs.h new file mode 100644 index 0000000..18a3a1f --- /dev/null +++ b/contrib/wpa/src/eap_server/tncs.h @@ -0,0 +1,49 @@ +/* + * EAP-TNC - TNCS (IF-IMV, IF-TNCCS, and IF-TNCCS-SOH) + * Copyright (c) 2007-2008, Jouni Malinen <j@w1.fi> + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License version 2 as + * published by the Free Software Foundation. + * + * Alternatively, this software may be distributed under the terms of BSD + * license. + * + * See README and COPYING for more details. + */ + +#ifndef TNCS_H +#define TNCS_H + +struct tncs_data; + +struct tncs_data * tncs_init(void); +void tncs_deinit(struct tncs_data *tncs); +void tncs_init_connection(struct tncs_data *tncs); +size_t tncs_total_send_len(struct tncs_data *tncs); +u8 * tncs_copy_send_buf(struct tncs_data *tncs, u8 *pos); +char * tncs_if_tnccs_start(struct tncs_data *tncs); +char * tncs_if_tnccs_end(void); + +enum tncs_process_res { + TNCCS_PROCESS_ERROR = -1, + TNCCS_PROCESS_OK_NO_RECOMMENDATION = 0, + TNCCS_RECOMMENDATION_ERROR, + TNCCS_RECOMMENDATION_ALLOW, + TNCCS_RECOMMENDATION_NONE, + TNCCS_RECOMMENDATION_ISOLATE, + TNCCS_RECOMMENDATION_NO_ACCESS, + TNCCS_RECOMMENDATION_NO_RECOMMENDATION +}; + +enum tncs_process_res tncs_process_if_tnccs(struct tncs_data *tncs, + const u8 *msg, size_t len); + +int tncs_global_init(void); +void tncs_global_deinit(void); + +struct wpabuf * tncs_build_soh_request(void); +struct wpabuf * tncs_process_soh(const u8 *soh_tlv, size_t soh_tlv_len, + int *failure); + +#endif /* TNCS_H */ |