Return to delete_child_sa_job.h CVS log | Up to [ELWIX - Embedded LightWeight unIX -] / embedaddon / strongswan / src / libcharon / processing / jobs |
1.1 misho 1: /* 2: * Copyright (C) 2017 Tobias Brunner 3: * Copyright (C) 2006 Martin Willi 4: * HSR Hochschule fuer Technik Rapperswil 5: * 6: * This program is free software; you can redistribute it and/or modify it 7: * under the terms of the GNU General Public License as published by the 8: * Free Software Foundation; either version 2 of the License, or (at your 9: * option) any later version. See <http://www.fsf.org/copyleft/gpl.txt>. 10: * 11: * This program is distributed in the hope that it will be useful, but 12: * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY 13: * or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License 14: * for more details. 15: */ 16: 17: /** 18: * @defgroup delete_child_sa_job delete_child_sa_job 19: * @{ @ingroup cjobs 20: */ 21: 22: #ifndef DELETE_CHILD_SA_JOB_H_ 23: #define DELETE_CHILD_SA_JOB_H_ 24: 25: typedef struct delete_child_sa_job_t delete_child_sa_job_t; 26: 27: #include <library.h> 28: #include <sa/ike_sa_id.h> 29: #include <processing/jobs/job.h> 30: #include <crypto/proposal/proposal.h> 31: 32: 33: /** 34: * Class representing an DELETE_CHILD_SA Job. 35: * 36: * This job initiates the delete of a CHILD SA. 37: */ 38: struct delete_child_sa_job_t { 39: /** 40: * The job_t interface. 41: */ 42: job_t job_interface; 43: }; 44: 45: /** 46: * Creates a job that deletes a CHILD_SA. 47: * 48: * @param protocol protocol of the CHILD_SA 49: * @param spi security parameter index of the CHILD_SA 50: * @param dst SA destination address 51: * @param expired TRUE if CHILD_SA already expired 52: * @return delete_child_sa_job_t object 53: */ 54: delete_child_sa_job_t *delete_child_sa_job_create(protocol_id_t protocol, 55: uint32_t spi, host_t *dst, bool expired); 56: 57: /** 58: * Creates a job that deletes a CHILD_SA identified by its unique ID. 59: * 60: * @param id unique ID of the CHILD_SA 61: * @return delete_child_sa_job_t object 62: */ 63: delete_child_sa_job_t *delete_child_sa_job_create_id(uint32_t id); 64: 65: #endif /** DELETE_CHILD_SA_JOB_H_ @}*/