1 /* 2 PIM for Quagga 3 Copyright (C) 2008 Everton da Silva Marques 4 5 This program is free software; you can redistribute it and/or modify 6 it under the terms of the GNU General Public License as published by 7 the Free Software Foundation; either version 2 of the License, or 8 (at your option) any later version. 9 10 This program is distributed in the hope that it will be useful, but 11 WITHOUT ANY WARRANTY; without even the implied warranty of 12 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 13 General Public License for more details. 14 15 You should have received a copy of the GNU General Public License 16 along with this program; see the file COPYING; if not, write to the 17 Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, 18 MA 02110-1301 USA 19 20 $QuaggaId: $Format:%an, %ai, %h$ $ 21 */ 22 23 #ifndef PIM_SSMPINGD_H 24 #define PIM_SSMPINGD_H 25 26 #include <zebra.h> 27 28 #include "if.h" 29 30 #include "pim_iface.h" 31 32 struct ssmpingd_sock { 33 int sock_fd; /* socket */ 34 struct thread *t_sock_read; /* thread for reading socket */ 35 struct in_addr source_addr; /* source address */ 36 int64_t creation; /* timestamp of socket creation */ 37 int64_t requests; /* counter */ 38 }; 39 40 void pim_ssmpingd_init(void); 41 void pim_ssmpingd_destroy(void); 42 int pim_ssmpingd_start(struct in_addr source_addr); 43 int pim_ssmpingd_stop(struct in_addr source_addr); 44 45 #endif /* PIM_SSMPINGD_H */ 46