@@ -45,7 +45,7 @@ int main(int argc, char **argv) {
45
45
46
46
auto exit_usage = [&exe_name]() {
47
47
std::cerr << " Use '" << exe_name << " --help' for more information." << std::endl;
48
- exit ( EX_USAGE) ;
48
+ return EX_USAGE;
49
49
};
50
50
51
51
auto euid = geteuid ();
@@ -54,12 +54,12 @@ int main(int argc, char **argv) {
54
54
// establish signal handler
55
55
if (signal (SIGINT, sig_term_handler) || signal (SIGTERM, sig_term_handler)) {
56
56
perror (" Failed to establish signal handler" );
57
- exit ( EX_OSERR) ;
57
+ return EX_OSERR;
58
58
}
59
59
60
60
if (signal (SIGALRM, [](int ) { exit (EX_OK); })) {
61
61
perror (" Failed to establish signal handler" );
62
- exit ( EX_OSERR) ;
62
+ return EX_OSERR;
63
63
}
64
64
65
65
// all command line arguments
@@ -126,7 +126,7 @@ int main(int argc, char **argv) {
126
126
args = options.parse (argc, argv);
127
127
} catch (cxxopts::OptionParseException &e) {
128
128
std::cerr << " Failed to parse arguments: " << e.what () << ' .' << std::endl;
129
- exit_usage ();
129
+ return exit_usage ();
130
130
}
131
131
132
132
// print usage
@@ -145,7 +145,7 @@ int main(int argc, char **argv) {
145
145
std::cout << " This application uses the following libraries:" << std::endl;
146
146
std::cout << " - cxxopts by jarro2783 (https://github.com/jarro2783/cxxopts)" << std::endl;
147
147
std::cout << " - libmodbus by Stéphane Raimbault (https://github.com/stephane/libmodbus)" << std::endl;
148
- exit ( EX_OK) ;
148
+ return EX_OK;
149
149
}
150
150
151
151
// print usage
@@ -155,34 +155,34 @@ int main(int argc, char **argv) {
155
155
<< " -nonlinux"
156
156
#endif
157
157
<< std::endl;
158
- exit ( EX_OK) ;
158
+ return EX_OK;
159
159
}
160
160
161
161
// print licenses
162
162
if (args.count (" license" )) {
163
163
print_licenses (std::cout);
164
- exit ( EX_OK) ;
164
+ return EX_OK;
165
165
}
166
166
167
167
// check arguments
168
168
if (args[" do-registers" ].as <std::size_t >() > MODBUS_MAX_REGS) {
169
169
std::cerr << " to many do-registers (maximum: " << MODBUS_MAX_REGS << " )." << std::endl;
170
- exit_usage ();
170
+ return exit_usage ();
171
171
}
172
172
173
173
if (args[" di-registers" ].as <std::size_t >() > MODBUS_MAX_REGS) {
174
174
std::cerr << " to many di-registers (maximum: " << MODBUS_MAX_REGS << " )." << std::endl;
175
- exit_usage ();
175
+ return exit_usage ();
176
176
}
177
177
178
178
if (args[" ao-registers" ].as <std::size_t >() > MODBUS_MAX_REGS) {
179
179
std::cerr << " to many ao-registers (maximum: " << MODBUS_MAX_REGS << " )." << std::endl;
180
- exit_usage ();
180
+ return exit_usage ();
181
181
}
182
182
183
183
if (args[" ai-registers" ].as <std::size_t >() > MODBUS_MAX_REGS) {
184
184
std::cerr << " to many ai-registers (maximum: " << MODBUS_MAX_REGS << " )." << std::endl;
185
- exit_usage ();
185
+ return exit_usage ();
186
186
}
187
187
188
188
// create shared memory object for modbus registers
@@ -196,7 +196,7 @@ int main(int argc, char **argv) {
196
196
args.count (" force" ) > 0 );
197
197
} catch (const std::system_error &e) {
198
198
std::cerr << e.what () << std::endl;
199
- exit ( EX_OSERR) ;
199
+ return EX_OSERR;
200
200
}
201
201
202
202
// create slave
@@ -213,7 +213,7 @@ int main(int argc, char **argv) {
213
213
slave->set_debug (args.count (" monitor" ));
214
214
} catch (const std::runtime_error &e) {
215
215
std::cerr << e.what () << std::endl;
216
- exit ( EX_SOFTWARE) ;
216
+ return EX_SOFTWARE;
217
217
}
218
218
socket = slave->get_socket ();
219
219
@@ -224,7 +224,7 @@ int main(int argc, char **argv) {
224
224
if (args.count (" byte-timeout" )) { slave->set_byte_timeout (args[" byte-timeout" ].as <double >()); }
225
225
} catch (const std::runtime_error &e) {
226
226
std::cerr << e.what () << std::endl;
227
- exit ( EX_SOFTWARE) ;
227
+ return EX_SOFTWARE;
228
228
}
229
229
230
230
// connection loop
@@ -237,7 +237,7 @@ int main(int argc, char **argv) {
237
237
} catch (const std::runtime_error &e) {
238
238
if (!terminate) {
239
239
std::cerr << e.what () << std::endl;
240
- exit ( EX_SOFTWARE) ;
240
+ return EX_SOFTWARE;
241
241
}
242
242
break ;
243
243
}
0 commit comments