131921Sbrian/*- 2330449Seadler * SPDX-License-Identifier: BSD-2-Clause-FreeBSD 3330449Seadler * 431921Sbrian * Copyright (c) 1997 Brian Somers <brian@Awfulhak.org> 531921Sbrian * All rights reserved. 631921Sbrian * 731921Sbrian * Redistribution and use in source and binary forms, with or without 831921Sbrian * modification, are permitted provided that the following conditions 931921Sbrian * are met: 1031921Sbrian * 1. Redistributions of source code must retain the above copyright 1131921Sbrian * notice, this list of conditions and the following disclaimer. 1231921Sbrian * 2. Redistributions in binary form must reproduce the above copyright 1331921Sbrian * notice, this list of conditions and the following disclaimer in the 1431921Sbrian * documentation and/or other materials provided with the distribution. 1531921Sbrian * 1631921Sbrian * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND 1731921Sbrian * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 1831921Sbrian * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE 1931921Sbrian * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE 2031921Sbrian * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL 2131921Sbrian * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS 2231921Sbrian * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 2331921Sbrian * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 2431921Sbrian * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY 2531921Sbrian * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 2631921Sbrian * SUCH DAMAGE. 2731921Sbrian * 2850479Speter * $FreeBSD: stable/11/usr.sbin/ppp/log.h 330449 2018-03-05 07:26:05Z eadler $ 2930715Sbrian */ 3030715Sbrian 3185991Sbrian#define LogLOG (0) 3226516Sbrian#define LogMIN (1) 3328679Sbrian#define LogASYNC (1) /* syslog(LOG_INFO, ....) */ 3438174Sbrian#define LogCBCP (2) 3538174Sbrian#define LogCCP (3) 3638174Sbrian#define LogCHAT (4) 3738174Sbrian#define LogCOMMAND (5) 3838174Sbrian#define LogCONNECT (6) 3938174Sbrian#define LogDEBUG (7) /* syslog(LOG_DEBUG, ....) */ 4058033Sbrian#define LogDNS (8) 4165181Sbrian#define LogFILTER (9) 4265181Sbrian#define LogHDLC (10) 4365181Sbrian#define LogID0 (11) 4465181Sbrian#define LogIPCP (12) 4581634Sbrian#define LogIPV6CP (13) 4681634Sbrian#define LogLCP (14) 4781634Sbrian#define LogLQM (15) 4881634Sbrian#define LogPHASE (16) 4981634Sbrian#define LogPHYSICAL (17) /* syslog(LOG_INFO, ....) */ 50132273Sbrian#define LogRADIUS (18) /* syslog(LOG_INFO, ....) */ 51132273Sbrian#define LogSYNC (19) /* syslog(LOG_INFO, ....) */ 52132273Sbrian#define LogTCPIP (20) 53132273Sbrian#define LogTIMER (21) /* syslog(LOG_DEBUG, ....) */ 54132273Sbrian#define LogTUN (22) /* If set, tun%d is output with each message */ 55132273Sbrian#define LogWARN (23) /* Sent to VarTerm else syslog(LOG_WARNING, ) */ 56132273Sbrian#define LogERROR (24) /* syslog(LOG_ERR, ....), + sent to VarTerm */ 57132273Sbrian#define LogALERT (25) /* syslog(LOG_ALERT, ....) */ 586059Samurai 59132273Sbrian#define LogMAXCONF (22) 60132273Sbrian#define LogMAX (25) 6158033Sbrian 6236285Sbrianstruct mbuf; 6336285Sbrianstruct cmdargs; 6436285Sbrianstruct prompt; 6536314Sbrianstruct server; 6636314Sbrianstruct datalink; 6736285Sbrian 6826516Sbrian/* The first int arg for all of the following is one of the above values */ 6936285Sbrianextern const char *log_Name(int); 7036285Sbrianextern void log_Keep(int); 7136285Sbrianextern void log_KeepLocal(int, u_long *); 7236285Sbrianextern void log_Discard(int); 7336285Sbrianextern void log_DiscardLocal(int, u_long *); 7436285Sbrianextern void log_DiscardAll(void); 7536285Sbrianextern void log_DiscardAllLocal(u_long *); 7636285Sbrian#define LOG_KEPT_SYSLOG (1) /* Results of log_IsKept() */ 7736285Sbrian#define LOG_KEPT_LOCAL (2) /* Results of log_IsKept() */ 7836285Sbrianextern int log_IsKept(int); 7936285Sbrianextern int log_IsKeptLocal(int, u_long); 8036285Sbrianextern void log_Open(const char *); 81218397Sbrianextern void log_SetTun(int, const char *); 8236285Sbrianextern void log_Close(void); 8336285Sbrian#ifdef __GNUC__ 8436285Sbrianextern void log_Printf(int, const char *,...) 8536285Sbrian __attribute__ ((format (printf, 2, 3))); 8638200Sbrianextern void log_WritePrompts(struct datalink *, const char *, ...) 8738200Sbrian __attribute__ ((format (printf, 2, 3))); 8836285Sbrian#else 8936285Sbrianextern void log_Printf(int, const char *,...); 9038200Sbrianextern void log_WritePrompts(struct datalink *, const char *, ...); 9136285Sbrian#endif 9236285Sbrianextern void log_DumpBp(int, const char *, const struct mbuf *); 9336285Sbrianextern void log_DumpBuff(int, const char *, const u_char *, int); 9436285Sbrianextern int log_ShowLevel(struct cmdargs const *); 9536285Sbrianextern int log_SetLevel(struct cmdargs const *); 9636285Sbrianextern int log_ShowWho(struct cmdargs const *); 9736314Sbrian 9851005Sbrianextern struct prompt *log_PromptContext; 9938013Sbrianextern int log_PromptListChanged; 10036314Sbrianextern void log_RegisterPrompt(struct prompt *); 10136314Sbrianextern void log_UnRegisterPrompt(struct prompt *); 10236314Sbrianextern void log_DestroyPrompts(struct server *); 10336314Sbrianextern void log_DisplayPrompts(void); 10436314Sbrianextern void log_ActivatePrompt(struct prompt *); 10536314Sbrianextern void log_DeactivatePrompt(struct prompt *); 10636314Sbrianextern void log_SetTtyCommandMode(struct datalink *); 10736314Sbrianextern struct prompt *log_PromptList(void); 108