nameservice: show Git SHA and no version in plugin constructor
[olsrd.git] / lib / nameservice / src / olsrd_plugin.c
1
2 /*
3  * Copyright (c) 2005, Bruno Randolf <bruno.randolf@4g-systems.biz>
4  * Copyright (c) 2004, Andreas Tonnesen(andreto-at-olsr.org)
5  * All rights reserved.
6  *
7  * Redistribution and use in source and binary forms, with or without
8  * modification, are permitted provided that the following conditions
9  * are met:
10  *
11  * * Redistributions of source code must retain the above copyright notice,
12  *   this list of conditions and the following disclaimer.
13  * * Redistributions in binary form must reproduce the above copyright notice,
14  *   this list of conditions and the following disclaimer in the documentation
15  *   and/or other materials provided with the distribution.
16  * * Neither the name of the UniK olsr daemon nor the names of its contributors
17  *   may be used to endorse or promote products derived from this software
18  *   without specific prior written permission.
19  *
20  * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
21  * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
22  * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
23  * IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT,
24  * INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
25  * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
26  * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
27  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE
28  * OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED
29  * OF THE POSSIBILITY OF SUCH DAMAGE.
30  *
31  */
32
33 /*
34  * Dynamic linked library for olsr.org olsrd
35  */
36
37 #include <stdio.h>
38 #include <string.h>
39
40 #include "olsrd_plugin.h"
41 #include "nameservice.h"
42 #include "olsr.h"
43 #include "builddata.h"
44
45 #define PLUGIN_NAME              "OLSRD nameservice plugin"
46 #define PLUGIN_INTERFACE_VERSION 5
47
48 static void __attribute__ ((constructor)) my_init(void);
49
50 static void __attribute__ ((destructor)) my_fini(void);
51
52 int
53 olsrd_plugin_interface_version(void)
54 {
55   return PLUGIN_INTERFACE_VERSION;
56 }
57
58 int
59 olsrd_plugin_init(void)
60 {
61   return name_init();
62 }
63
64 static void
65 my_init(void)
66 {
67   /* Print plugin info to stdout */
68   olsr_printf(0, "%s (%s)\n", PLUGIN_NAME, git_descriptor);
69
70   name_constructor();
71
72   return;
73 }
74
75 static void
76 my_fini(void)
77 {
78   name_destructor();
79 }
80
81 /*
82  * Local Variables:
83  * c-basic-offset: 2
84  * indent-tabs-mode: nil
85  * End:
86  */