1 /*
2  * Copyright (C) 2012  John Eaglesham
3  *
4  * Permission to use, copy, modify, and distribute this software for any
5  * purpose with or without fee is hereby granted, provided that the above
6  * copyright notice and this permission notice appear in all copies.
7  *
8  * THE SOFTWARE IS PROVIDED "AS IS" AND JOHN EAGLESHAM
9  * DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE INCLUDING ALL
10  * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL
11  * JOHN EAGLESHAM BE LIABLE FOR ANY SPECIAL, DIRECT,
12  * INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING
13  * FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT,
14  * NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION
15  * WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
16  */
17 
18 #include "EXTERN.h"
19 #include "perl.h"
20 #include "XSUB.h"
21 #include "dlz_perl_driver.h"
22 
23 #include <dlz_minimal.h>
24 
25 /* And some XS code. */
26 MODULE = DLZ_Perl	   PACKAGE = DLZ_Perl
27 
28 int
29 LOG_INFO()
30 	CODE:
31 		RETVAL = ISC_LOG_INFO;
32 	OUTPUT:
33 		RETVAL
34 
35 int
36 LOG_NOTICE()
37 	CODE:
38 		RETVAL = ISC_LOG_NOTICE;
39 	OUTPUT:
40 		RETVAL
41 
42 int
43 LOG_WARNING()
44 	CODE:
45 		RETVAL = ISC_LOG_WARNING;
46 	OUTPUT:
47 		RETVAL
48 
49 int
50 LOG_ERROR()
51 	CODE:
52 		RETVAL = ISC_LOG_ERROR;
53 	OUTPUT:
54 		RETVAL
55 
56 int
57 LOG_CRITICAL()
58 	CODE:
59 		RETVAL = ISC_LOG_CRITICAL;
60 	OUTPUT:
61 		RETVAL
62 
63 
64 void
65 log(opaque, level, msg)
66 	IV opaque
67 	int level
68 	char *msg
69 
70 	PREINIT:
71 		log_t *log = (log_t *) opaque;
72 
73 	CODE:
74 		log( level, msg );
75 
76