|  | /*  Syslog internals | 
|  | * | 
|  | *  Copyright 2010 Canonical, Ltd. | 
|  | *  Author: Kees Cook <kees.cook@canonical.com> | 
|  | * | 
|  | *  This program is free software; you can redistribute it and/or modify | 
|  | *  it under the terms of the GNU General Public License as published by | 
|  | *  the Free Software Foundation; either version 2, or (at your option) | 
|  | *  any later version. | 
|  | * | 
|  | *  This program is distributed in the hope that it will be useful, | 
|  | *  but WITHOUT ANY WARRANTY; without even the implied warranty of | 
|  | *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the | 
|  | *  GNU General Public License for more details. | 
|  | * | 
|  | *  You should have received a copy of the GNU General Public License | 
|  | *  along with this program; see the file COPYING.  If not, write to | 
|  | *  the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA. | 
|  | */ | 
|  |  | 
|  | #ifndef _LINUX_SYSLOG_H | 
|  | #define _LINUX_SYSLOG_H | 
|  |  | 
|  | /* Close the log.  Currently a NOP. */ | 
|  | #define SYSLOG_ACTION_CLOSE          0 | 
|  | /* Open the log. Currently a NOP. */ | 
|  | #define SYSLOG_ACTION_OPEN           1 | 
|  | /* Read from the log. */ | 
|  | #define SYSLOG_ACTION_READ           2 | 
|  | /* Read all messages remaining in the ring buffer. */ | 
|  | #define SYSLOG_ACTION_READ_ALL       3 | 
|  | /* Read and clear all messages remaining in the ring buffer */ | 
|  | #define SYSLOG_ACTION_READ_CLEAR     4 | 
|  | /* Clear ring buffer. */ | 
|  | #define SYSLOG_ACTION_CLEAR          5 | 
|  | /* Disable printk's to console */ | 
|  | #define SYSLOG_ACTION_CONSOLE_OFF    6 | 
|  | /* Enable printk's to console */ | 
|  | #define SYSLOG_ACTION_CONSOLE_ON     7 | 
|  | /* Set level of messages printed to console */ | 
|  | #define SYSLOG_ACTION_CONSOLE_LEVEL  8 | 
|  | /* Return number of unread characters in the log buffer */ | 
|  | #define SYSLOG_ACTION_SIZE_UNREAD    9 | 
|  | /* Return size of the log buffer */ | 
|  | #define SYSLOG_ACTION_SIZE_BUFFER   10 | 
|  |  | 
|  | #define SYSLOG_FROM_READER           0 | 
|  | #define SYSLOG_FROM_PROC             1 | 
|  |  | 
|  | int do_syslog(int type, char __user *buf, int count, int source); | 
|  |  | 
|  | #ifdef CONFIG_PRINTK | 
|  | int check_syslog_permissions(int type, int source); | 
|  | #else | 
|  | static inline int check_syslog_permissions(int type, int source) | 
|  | { | 
|  | return 0; | 
|  | } | 
|  | #endif | 
|  |  | 
|  | #endif /* _LINUX_SYSLOG_H */ |