1. -- 
  2. --  Copyright (c) 2008-2011, 
  3. --  Reto Buerki, Adrian-Ken Rueegsegger 
  4. -- 
  5. --  This file is part of Alog. 
  6. -- 
  7. --  Alog is free software; you can redistribute it and/or modify 
  8. --  it under the terms of the GNU Lesser General Public License as published 
  9. --  by the Free Software Foundation; either version 2.1 of the License, or 
  10. --  (at your option) any later version. 
  11. -- 
  12. --  Alog is distributed in the hope that it will be useful, 
  13. --  but WITHOUT ANY WARRANTY; without even the implied warranty of 
  14. --  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the 
  15. --  GNU Lesser General Public License for more details. 
  16. -- 
  17. --  You should have received a copy of the GNU Lesser General Public License 
  18. --  along with Alog; if not, write to the Free Software 
  19. --  Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, 
  20. --  MA  02110-1301  USA 
  21.  
  22. --  Syslog facility: Used to log to systems syslog. 
  23. package Alog.Facilities.Syslog is 
  24.  
  25.    type Instance is new Alog.Facilities.Instance with private; 
  26.    --  Syslog based logging facility. 
  27.  
  28.    type Handle is access all Instance; 
  29.  
  30.    type Syslog_Origin is 
  31.      (LOG_AUTH, 
  32.       LOG_AUTHPRIV, 
  33.       LOG_CRON, 
  34.       LOG_DAEMON, 
  35.       LOG_FTP, 
  36.       LOG_KERN, 
  37.       LOG_LOCAL0, 
  38.       LOG_LOCAL1, 
  39.       LOG_LOCAL2, 
  40.       LOG_LOCAL3, 
  41.       LOG_LOCAL4, 
  42.       LOG_LOCAL5, 
  43.       LOG_LOCAL6, 
  44.       LOG_LOCAL7, 
  45.       LOG_LPR, 
  46.       LOG_MAIL, 
  47.       LOG_NEWS, 
  48.       LOG_SYSLOG, 
  49.       LOG_USER, 
  50.       LOG_UUCP); 
  51.    --  Syslog facilties. Specifies what type of program is logging the message. 
  52.  
  53.    procedure Set_Origin 
  54.      (Facility : in out Instance; 
  55.       Value    :        Syslog_Origin); 
  56.    --  Set origin of syslog message. 
  57.  
  58.    function Get_Origin (Facility : Instance) return Syslog_Origin; 
  59.    --  Return currently set syslog origin of given facility. 
  60.  
  61. private 
  62.  
  63.    overriding 
  64.    procedure Write 
  65.      (Facility : Instance; 
  66.       Level    : Log_Level := Info; 
  67.       Msg      : String); 
  68.    --  Implementation of the Write procedure for syslog. 
  69.  
  70.    type Instance is new Alog.Facilities.Instance with record 
  71.       Origin : Syslog_Origin := LOG_USER; 
  72.    end record; 
  73.  
  74. end Alog.Facilities.Syslog;