]>
Commit | Line | Data |
---|---|---|
e314700c JH |
1 | /** |
2 | * @file delete_established_ike_sa_job.h | |
3 | * | |
4 | * @brief Interface of delete_established_ike_sa_job_t. | |
5 | * | |
6 | */ | |
7 | ||
8 | /* | |
9 | * Copyright (C) 2005 Jan Hutter, Martin Willi | |
10 | * Hochschule fuer Technik Rapperswil | |
11 | * | |
12 | * This program is free software; you can redistribute it and/or modify it | |
13 | * under the terms of the GNU General Public License as published by the | |
14 | * Free Software Foundation; either version 2 of the License, or (at your | |
15 | * option) any later version. See <http://www.fsf.org/copyleft/gpl.txt>. | |
16 | * | |
17 | * This program is distributed in the hope that it will be useful, but | |
18 | * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY | |
19 | * or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License | |
20 | * for more details. | |
21 | */ | |
22 | ||
23 | #ifndef DELETE_ESTABLISHED_IKE_SA_JOB_H_ | |
24 | #define DELETE_ESTABLISHED_IKE_SA_JOB_H_ | |
25 | ||
26 | #include <types.h> | |
27 | #include <sa/ike_sa_id.h> | |
28 | #include <queues/jobs/job.h> | |
29 | ||
30 | ||
31 | typedef struct delete_established_ike_sa_job_t delete_established_ike_sa_job_t; | |
32 | ||
33 | /** | |
34 | * @brief Class representing an DELETE_ESTABLISHED_IKE_SA Job. | |
35 | * | |
a6cbf648 MW |
36 | * This job initiates the deletion of an IKE_SA. The SA |
37 | * to delete is specified via an ike_sa_id_t. | |
38 | * | |
e314700c JH |
39 | * @b Constructors: |
40 | * - delete_established_ike_sa_job_create() | |
41 | * | |
42 | * @ingroup jobs | |
43 | */ | |
44 | struct delete_established_ike_sa_job_t { | |
45 | /** | |
46 | * The job_t interface. | |
47 | */ | |
48 | job_t job_interface; | |
49 | ||
50 | /** | |
51 | * @brief Returns the currently set ike_sa_id. | |
52 | * | |
53 | * @warning Returned object is not copied. | |
54 | * | |
55 | * @param this calling delete_established_ike_sa_job_t object | |
56 | * @return ike_sa_id_t object | |
57 | */ | |
58 | ike_sa_id_t * (*get_ike_sa_id) (delete_established_ike_sa_job_t *this); | |
59 | ||
60 | /** | |
61 | * @brief Destroys an delete_established_ike_sa_job_t object (including assigned data). | |
62 | * | |
63 | * @param this delete_established_ike_sa_job_t object to destroy | |
64 | */ | |
65 | void (*destroy) (delete_established_ike_sa_job_t *this); | |
66 | }; | |
67 | ||
68 | /** | |
69 | * @brief Creates a job of type DELETE_ESTABLISHED_IKE_SA. | |
70 | * | |
71 | * @param ike_sa_id id of the IKE_SA to delete | |
a6cbf648 | 72 | * @return delete_established_ike_sa_job_t object |
e314700c JH |
73 | * |
74 | * @ingroup jobs | |
75 | */ | |
76 | delete_established_ike_sa_job_t *delete_established_ike_sa_job_create(ike_sa_id_t *ike_sa_id); | |
77 | ||
78 | #endif /*DELETE_ESTABLISHED_IKE_SA_JOB_H_*/ |