blob: 04cad44cb77e19e59d280be2a613b0f527defe75 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
|
/*
Copyright (C) 2008 Andreas Baumann <abaumann@yahoo.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 3 of the License, 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. If not, see <http://www.gnu.org/licenses/>.
*/
#ifndef WOLF_MESSAGES_H
#define WOLF_MESSAGES_H
/**
* @addtogroup wolf_i18n Localization
* @{
*/
/**
* @file messages.h
* @brief Global Message Identifiers and Category Identifiers used for logging
* @author Andreas Baumann <abaumann@yahoo.com>
*/
/* IMPORTANT: Think once and define the constants here. They should
* NEVER be changed anymore!
* IMPORTANT: Mark deprecated messages and categories, but don't
* delete them! Maybe after a major release cycle they
* can drop out..
*/
/*
* CATEGORIES
*/
/*
* Categories should represent aspects or subsystems, e.g. networking,
* logging, protocol. The constants must be system-wide unique and
* strictly increasing starting from 1 (this is a requirement for
* the event logger on Windows and it's definition of category
* resources in the DLL).
*/
#define WOLF_CATEGORY_LOGGER 1
#define WOLF_CATEGORY_DAEMON 2
#define WOLF_CATEGORY_SERVICE 3
/**
* Last internally used category. Applications should define their
* own categories starting from WOLF_LAST_INTERNAL_CATEGORY+1.
*/
#define WOLF_LAST_INTERNAL_CATEGORY 3
/*
* MESSAGES of category LOGGER
*/
#define WOLF_MSG_LOGGER_BASE WOLF_CATEGORY_LOGGER * 1000
#define WOLF_MSG_LOGGER_UNABLE_TO_OPEN_LOGFILE WOLF_MSG_LOGGER_BASE+1
/* for users which extend the logger, for instance their own logging channel to a serial console */
#define WOLF_MSG_LOGGER_USER_BASE WOLF_MSG_LOGGER_BASE+500
/*
* MESSAGES of category DAEMON
*/
#define WOLF_MSG_DAEMON_BASE WOLF_CATEGORY_DAEMON * 1000
/* daemon/signals.c */
#define WOLF_MSG_DAEMON_CANT_INSTALL_IGNORE_SIGNAL WOLF_MSG_DAEMON_BASE+1
#define WOLF_MSG_DAEMON_IGNORE_SIGNAL WOLF_MSG_DAEMON_BASE+2
#define WOLF_MSG_DAEMON_CANT_INSTALL_CRITICAL_SIGNAL WOLF_MSG_DAEMON_BASE+3
#define WOLF_MSG_DAEMON_CRITICAL_SIGNAL WOLF_MSG_DAEMON_BASE+4
#define WOLF_MSG_DAEMON_GOT_SIGNAL WOLF_MSG_DAEMON_BASE+5
#define WOLF_MSG_DAEMON_CANT_INSTALL_FUNC_SIGNAL WOLF_MSG_DAEMON_BASE+6
#define WOLF_MSG_DAEMON_FUNC_SIGNAL WOLF_MSG_DAEMON_BASE+7
/* daemon/pidfile.c */
#define WOLF_MSG_DAEMON_NO_PIDFILE WOLF_MSG_DAEMON_BASE+20
#define WOLF_MSG_DAEMON_CANT_OPEN_PIDFILE_FOR_READING WOLF_MSG_DAEMON_BASE+21
#define WOLF_MSG_DAEMON_CANT_OPEN_PIDFILE_FOR_WRITTING WOLF_MSG_DAEMON_BASE+22
#define WOLF_MSG_DAEMON_ANOTHER_IS_RUNNING WOLF_MSG_DAEMON_BASE+23
#define WOLF_MSG_DAEMON_CANT_LOCK_PIDFILE WOLF_MSG_DAEMON_BASE+24
#define WOLF_MSG_DAEMON_CANT_READ_PID_FROM_PIDFILE WOLF_MSG_DAEMON_BASE+25
#define WOLF_MSG_DAEMON_PIDFILE_WITH_ILLEGAL_DATA WOLF_MSG_DAEMON_BASE+26
#define WOLF_MSG_DAEMON_FOUND_PID_IN_PIDFILE WOLF_MSG_DAEMON_BASE+27
#define WOLF_MSG_DAEMON_FOUND_PID_BUT_NO_PROCESS_RUNNING WOLF_MSG_DAEMON_BASE+28
#define WOLF_MSG_DAEMON_PROCESS_ALIVE_CHECK_FAILED WOLF_MSG_DAEMON_BASE+29
#define WOLF_MSG_DAEMON_ALREADY_RUNNING_WITH_PID WOLF_MSG_DAEMON_BASE+30
#define WOLF_MSG_DAEMON_PIDFILE_IN_USE WOLF_MSG_DAEMON_BASE+31
#define WOLF_MSG_DAEMON_CANT_LOCK_PIDFILE_AFTER_CREATION WOLF_MSG_DAEMON_BASE+32
#define WOLF_MSG_DAEMON_CANT_TRUNCATE_PIDFILE WOLF_MSG_DAEMON_BASE+33
#define WOLF_MSG_DAEMON_CANT_WRITE_PID_INTO_PIDFILE WOLF_MSG_DAEMON_BASE+34
#define WOLF_MSG_DAEMON_ATOMIC_PIDFILE_WRITE_FAILED WOLF_MSG_DAEMON_BASE+35
#define WOLF_MSG_DAEMON_STORED_PIDFILE WOLF_MSG_DAEMON_BASE+36
#define WOLF_MSG_DAEMON_RELEASING_PIDFILE WOLF_MSG_DAEMON_BASE+37
#define WOLF_MSG_DAEMON_CANT_UNLOCK_PIDFILE WOLF_MSG_DAEMON_BASE+38
#define WOLF_MSG_DAEMON_CANT_CLOSE_PIDFILE WOLF_MSG_DAEMON_BASE+39
#define WOLF_MSG_DAEMON_REMOVING_PIDFILE WOLF_MSG_DAEMON_BASE+40
#define WOLF_MSG_DAEMON_CANT_REMOVE_PIDFILE WOLF_MSG_DAEMON_BASE+41
/* daemon/daemon.c */
#define WOLF_MSG_DAEMON_CANT_CLOSE_FD WOLF_MSG_DAEMON_BASE+60
#define WOLF_MSG_DAEMON_RETRIEVING_MAXNOFFDS_FAILED WOLF_MSG_DAEMON_BASE+61
#define WOLF_MSG_DAEMON_CLOSING_ALL_FDS WOLF_MSG_DAEMON_BASE+62
#define WOLF_MSG_DAEMON_CANT_OPEN_FD_AS_DEV_NULL WOLF_MSG_DAEMON_BASE+63
#define WOLF_MSG_DAEMON_FD_NUMBERS_WRONG WOLF_MSG_DAEMON_BASE+64
#define WOLF_MSG_DAEMON_PIPE_ATOMIC_WRITE_FAILED WOLF_MSG_DAEMON_BASE+65
#define WOLF_MSG_DAEMON_PIPE_ATOMIC_WRITE_WRONG_OCTETS WOLF_MSG_DAEMON_BASE+66
#define WOLF_MSG_DAEMON_PIPE_ATOMIC_READ_FAILED WOLF_MSG_DAEMON_BASE+67
#define WOLF_MSG_DAEMON_PIPE_ATOMIC_READ_WRONG_OCTETS WOLF_MSG_DAEMON_BASE+68
#define WOLF_MSG_DAEMON_ALREADY_RUNNING WOLF_MSG_DAEMON_BASE+69
#define WOLF_MSG_DAEMON_CANT_START_AS_NON_ROOT WOLF_MSG_DAEMON_BASE+70
#define WOLF_MSG_DAEMON_CANT_CREATE_EXIT_CODE_PIPE WOLF_MSG_DAEMON_BASE+71
#define WOLF_MSG_DAEMON_EXIT_CODE_PIPE_CREATED WOLF_MSG_DAEMON_BASE+72
#define WOLF_MSG_DAEMON_FIRST_FORK_FAILED WOLF_MSG_DAEMON_BASE+73
#define WOLF_MSG_DAEMON_FIRST_FORK_REACHED WOLF_MSG_DAEMON_BASE+74
#define WOLF_MSG_DAEMON_PARENT_AFTER_FIRST_FORK WOLF_MSG_DAEMON_BASE+75
#define WOLF_MSG_DAEMON_CANT_CREATE_PARENT_PIPE WOLF_MSG_DAEMON_BASE+76
#define WOLF_MSG_DAEMON_PARENT_PIPE_CREATED WOLF_MSG_DAEMON_BASE+77
#define WOLF_MSG_DAEMON_CANT_SET_NEW_PROCESS_GROUP WOLF_MSG_DAEMON_BASE+78
#define WOLF_MSG_DAEMON_SECOND_FORK_FAILED WOLF_MSG_DAEMON_BASE+79
#define WOLF_MSG_DAEMON_SECOND_FORK_REACHED WOLF_MSG_DAEMON_BASE+80
#define WOLF_MSG_DAEMON_PARENT_AFTER_SECOND_FORK WOLF_MSG_DAEMON_BASE+81
#define WOLF_MSG_DAEMON_CANT_CHANGE_ROOT_DIR WOLF_MSG_DAEMON_BASE+82
#define WOLF_MSG_DAEMON_CHANGED_ROOT_DIR WOLF_MSG_DAEMON_BASE+83
#define WOLF_MSG_DAEMON_SWITCHED_UMASK WOLF_MSG_DAEMON_BASE+84
#define WOLF_MSG_DAEMON_DAEMON_ALREADY_RUNNING_WITH_PID WOLF_MSG_DAEMON_BASE+85
#define WOLF_MSG_DAEMON_SWITCHED_UMASK_FINAL WOLF_MSG_DAEMON_BASE+86
#define WOLF_MSG_DAEMON_GROUP_NOT_FOUND WOLF_MSG_DAEMON_BASE+87
#define WOLF_MSG_DAEMON_GETGRNAM_FAILED WOLF_MSG_DAEMON_BASE+88
#define WOLF_MSG_DAEMON_USER_NOT_FOUND WOLF_MSG_DAEMON_BASE+89
#define WOLF_MSG_DAEMON_GETPWNAM_FAILED WOLF_MSG_DAEMON_BASE+90
#define WOLF_MSG_DAEMON_SETTING_UNPRIVILEGED_GROUP_FAILED WOLF_MSG_DAEMON_BASE+91
#define WOLF_MSG_DAEMON_SETTING_UNPRIVILEGED_USER_FAILED WOLF_MSG_DAEMON_BASE+92
#define WOLF_MSG_DAEMON_SWITCHED_USER WOLF_MSG_DAEMON_BASE+93
#define WOLF_MSG_DAEMON_EXIT_CALLED WOLF_MSG_DAEMON_BASE+94
#define WOLF_MSG_DAEMON_WAITING_FOR_EXIT_CODE_ON_PIPE WOLF_MSG_DAEMON_BASE+95
#define WOLF_MSG_DAEMON_TERMINATING_GRAND_PARENT WOLF_MSG_DAEMON_BASE+96
#define WOLF_MSG_DAEMON_WAITING_FOR_TERMINATION WOLF_MSG_DAEMON_BASE+97
#define WOLF_MSG_DAEMON_PARENT_GOT_TERMINATION WOLF_MSG_DAEMON_BASE+98
#define WOLF_MSG_DAEMON_TERMINATING_PARENT WOLF_MSG_DAEMON_BASE+99
#define WOLF_MSG_DAEMON_TERMINATING_DAEMON_OK WOLF_MSG_DAEMON_BASE+100
#define WOLF_MSG_DAEMON_TERMINATING_DAEMON_ERROR WOLF_MSG_DAEMON_BASE+101
#define WOLF_MSG_DAEMON_CANT_CREATE_SIGNAL_PIPE WOLF_MSG_DAEMON_BASE+102
#define WOLF_MSG_DAEMON_SIGNAL_PIPE_CREATED WOLF_MSG_DAEMON_BASE+103
#define WOLF_MSG_DAEMON_SELECT_FAILED_WAITING_FOR_SIGNAL WOLF_MSG_DAEMON_BASE+104
#define WOLF_MSG_DAEMON_CANT_READ_SIGNAL_FROM_PIPE WOLF_MSG_DAEMON_BASE+105
#define WOLF_MSG_DAEMON_NON_ATOMIC_READ_ON_SIGNAL_PIPE WOLF_MSG_DAEMON_BASE+106
#define WOLF_MSG_DAEMON_CANT_SET_NEW_PROCESS_GROUP_PARENT WOLF_MSG_DAEMON_BASE+107
/* for users which extend the daemon, for instance when writting a real daemon */
#define WOLF_MSG_DAEMON_USER_BASE WOLF_MSG_DAEMON_BASE+500
/*
* MESSAGES of category SERVICE
*/
#define WOLF_MSG_SERVICE_BASE WOLF_CATEGORY_SERVICE * 1000
/* service/service.c */
#define WOLF_MSG_SERVICE_INSTALLING_SERVICE WOLF_MSG_SERVICE_BASE+1
#define WOLF_MSG_SERVICE_CANT_OPEN_SCM_FOR_INSTALL WOLF_MSG_SERVICE_BASE+2
#define WOLF_MSG_SERVICE_CANT_GET_PATH_OF_BINARY WOLF_MSG_SERVICE_BASE+3
#define WOLF_MSG_SERVICE_CANT_CREATE_SERVICE WOLF_MSG_SERVICE_BASE+4
#define WOLF_MSG_SERVICE_SERVICE_INSTALLED WOLF_MSG_SERVICE_BASE+5
#define WOLF_MSG_SERVICE_UNINSTALLING_SERVICE WOLF_MSG_SERVICE_BASE+6
#define WOLF_MSG_SERVICE_CANT_OPEN_SCM_FOR_UNINSTALL WOLF_MSG_SERVICE_BASE+7
#define WOLF_MSG_SERVICE_CANT_OPEN_SERVICE WOLF_MSG_SERVICE_BASE+8
#define WOLF_MSG_SERVICE_CANT_DELETE_SERVICE WOLF_MSG_SERVICE_BASE+9
#define WOLF_MSG_SERVICE_SERVICE_UNINSTALLED WOLF_MSG_SERVICE_BASE+10
#define WOLF_MSG_SERVICE_REPORT_STATUS WOLF_MSG_SERVICE_BASE+11
#define WOLF_MSG_SERVICE_CANT_REPORT_STATUS WOLF_MSG_SERVICE_BASE+12
#define WOLF_MSG_SERVICE_HANDLING_EVENT WOLF_MSG_SERVICE_BASE+13
#define WOLF_MSG_SERVICE_CANT_REGISTER_SERVICE_CTRL_HANDLER WOLF_MSG_SERVICE_BASE+14
#define WOLF_MSG_SERVICE_CANT_CREATE_STOP_EVENT WOLF_MSG_SERVICE_BASE+15
#define WOLF_MSG_SERVICE_STARTED_SERVICE WOLF_MSG_SERVICE_BASE+16
#define WOLF_MSG_SERVICE_WAIT_FOR_OBJECT_FAILED WOLF_MSG_SERVICE_BASE+17
#define WOLF_MSG_SERVICE_STOPPED_SERVICE WOLF_MSG_SERVICE_BASE+18
#define WOLF_MSG_SERVICE_CANT_DISPATCH_SERVICE WOLF_MSG_SERVICE_BASE+19
#ifdef __cplusplus
extern "C" {
#endif
#ifdef __cplusplus
}
#endif
/** @} */ /* @addtogroup wolf_i18n */
#endif /* ifndef WOLF_MESSAGES_H */
|