Home | History | Annotate | Line # | Download | only in ldpd
ldp_command.h revision 1.2.8.1
      1  1.2.8.1     tls /* $NetBSD: ldp_command.h,v 1.2.8.1 2014/08/20 00:05:09 tls Exp $ */
      2      1.1  kefren 
      3      1.1  kefren /*-
      4      1.1  kefren  * Copyright (c) 2010 The NetBSD Foundation, Inc.
      5      1.1  kefren  * All rights reserved.
      6      1.1  kefren  *
      7      1.1  kefren  * This code is derived from software contributed to The NetBSD Foundation
      8      1.1  kefren  * by Mihai Chelaru <kefren (at) NetBSD.org>
      9      1.1  kefren  *
     10      1.1  kefren  * Redistribution and use in source and binary forms, with or without
     11      1.1  kefren  * modification, are permitted provided that the following conditions
     12      1.1  kefren  * are met:
     13      1.1  kefren  * 1. Redistributions of source code must retain the above copyright
     14      1.1  kefren  *    notice, this list of conditions and the following disclaimer.
     15      1.1  kefren  * 2. Redistributions in binary form must reproduce the above copyright
     16      1.1  kefren  *    notice, this list of conditions and the following disclaimer in the
     17      1.1  kefren  *    documentation and/or other materials provided with the distribution.
     18      1.1  kefren  *
     19      1.1  kefren  * THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS
     20      1.1  kefren  * ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
     21      1.1  kefren  * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
     22      1.1  kefren  * PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS
     23      1.1  kefren  * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
     24      1.1  kefren  * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
     25      1.1  kefren  * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
     26      1.1  kefren  * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
     27      1.1  kefren  * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
     28      1.1  kefren  * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
     29      1.1  kefren  * POSSIBILITY OF SUCH DAMAGE.
     30      1.1  kefren  */
     31      1.1  kefren 
     32      1.1  kefren #ifndef _LDP_COMMAND_H_
     33      1.1  kefren #define _LDP_COMMAND_H_
     34      1.1  kefren 
     35      1.1  kefren #define	MAX_COMMAND_SOCKETS 64
     36      1.1  kefren #define	MAX_COMMAND_SIZE 512
     37      1.1  kefren 
     38      1.1  kefren struct com_sock {
     39      1.1  kefren 	int socket;
     40      1.1  kefren 	int auth;	/* 1 if socket is authenticated */
     41      1.1  kefren };
     42      1.1  kefren 
     43      1.1  kefren struct com_func {
     44      1.1  kefren 	char com[64];
     45      1.1  kefren 	int (* func)(int, char *);
     46      1.1  kefren };
     47      1.1  kefren 
     48      1.1  kefren void	init_command_sockets(void);
     49      1.1  kefren int	create_command_socket(int);
     50      1.1  kefren struct com_sock *	is_command_socket(int);
     51      1.1  kefren void	command_accept(int);
     52      1.1  kefren int	add_command_socket(int);
     53      1.1  kefren void	command_dispatch(struct com_sock *);
     54      1.1  kefren void	command_close(int);
     55      1.1  kefren 
     56  1.2.8.1     tls /* Used by SIGINFO handler */
     57  1.2.8.1     tls int show_bindings(int, char *);
     58  1.2.8.1     tls int show_labels(int, char *);
     59  1.2.8.1     tls int show_neighbours(int, char *);
     60  1.2.8.1     tls 
     61      1.1  kefren #endif	/* !_LDP_COMMAND_H_ */
     62