Skip to content

Commit b128ec1

Browse files
committed
cleanup: Go for universal naming of functions / variables (easier to maintain Hyperion.NG/HyperHDR)
1 parent 77d413f commit b128ec1

File tree

2 files changed

+34
-31
lines changed

2 files changed

+34
-31
lines changed

service/src/main.c

Lines changed: 30 additions & 29 deletions
Original file line numberDiff line numberDiff line change
@@ -29,24 +29,24 @@ bool is_elevated()
2929
return (geteuid() == 0);
3030
}
3131

32-
char *hyperiond_cmdline(char *args)
32+
char *daemon_cmdline(char *args)
3333
{
3434
char *tmp = (char *)calloc(1, FILENAME_MAX);
35-
snprintf(tmp, FILENAME_MAX, "/bin/bash -c 'LD_LIBRARY_PATH=%s OPENSSL_armcap=%i %s/hyperiond %s'", HYPERION_PATH, 0, HYPERION_PATH, args);
35+
snprintf(tmp, FILENAME_MAX, "/bin/bash -c 'LD_LIBRARY_PATH=%s OPENSSL_armcap=%i %s/%s %s'", DAEMON_PATH, 0, DAEMON_PATH, DAEMON_EXECUTABLE, args);
3636
return tmp;
3737
}
3838

39-
int daemon_start(pid_t *pid)
39+
int daemon_spawn(pid_t *pid)
4040
{
4141
int res = 0;
4242

4343
char *env_library_path;
4444
char *env_armcap;
4545
char *application_executable_path;
4646

47-
asprintf(&env_library_path, "LD_LIBRARY_PATH=%s", HYPERION_PATH);
47+
asprintf(&env_library_path, "LD_LIBRARY_PATH=%s", DAEMON_PATH);
4848
asprintf(&env_armcap, "OPENSSL_armcap=%d", 0);
49-
asprintf(&application_executable_path, "%s/hyperiond", HYPERION_PATH);
49+
asprintf(&application_executable_path, "%s/%s", DAEMON_PATH, DAEMON_EXECUTABLE);
5050

5151
char *env_vars[] = {env_library_path, env_armcap, "HOME=/home/root", NULL};
5252
char *argv[] = {application_executable_path, NULL};
@@ -101,17 +101,17 @@ void *execution_task(void *data)
101101
return NULL;
102102
}
103103

104-
char *hyperiond_version_cmdline()
104+
char *daemon_version_cmdline()
105105
{
106-
return hyperiond_cmdline("--version");
106+
return daemon_cmdline("--version");
107107
}
108108

109109
bool is_running(pid_t pid)
110110
{
111111
return (pid > 0);
112112
}
113113

114-
int hyperiond_start(service_t* service)
114+
int daemon_start(service_t* service)
115115
{
116116
int res = 0;
117117
if (!is_elevated()) {
@@ -122,7 +122,7 @@ int hyperiond_start(service_t* service)
122122
return 2;
123123
}
124124

125-
res = daemon_start(&service->daemon_pid);
125+
res = daemon_spawn(&service->daemon_pid);
126126
DBG("daemon_start -> PID=%d", service->daemon_pid);
127127

128128
if (res != 0) {
@@ -139,7 +139,7 @@ int hyperiond_start(service_t* service)
139139
return 0;
140140
}
141141

142-
int hyperiond_stop(service_t* service)
142+
int daemon_stop(service_t* service)
143143
{
144144
int res = 0;
145145

@@ -167,25 +167,25 @@ int hyperiond_stop(service_t* service)
167167
return 0;
168168
}
169169

170-
int hyperiond_version(service_t* service)
170+
int daemon_version(service_t* service)
171171
{
172172
int res = 0;
173173
// NOTE: --version call is fine even without root privileges
174-
if (service->hyperiond_version == NULL) {
175-
service->hyperiond_version = (char *)calloc(FILENAME_MAX, 1);
176-
if (service->hyperiond_version == NULL) {
174+
if (service->daemon_version == NULL) {
175+
service->daemon_version = (char *)calloc(FILENAME_MAX, 1);
176+
if (service->daemon_version == NULL) {
177177
ERR("Failed version buf allocation");
178178
return 1;
179179
}
180180

181-
char *command = hyperiond_version_cmdline();
181+
char *command = daemon_version_cmdline();
182182
// Spawn process with read-only pipe
183183
FILE *fp = popen(command, "r");
184184
if (fp == NULL) {
185185
ERR("popen failed");
186186
res = 2;
187187
} else {
188-
int bytes_read = fread(service->hyperiond_version, 1, FILENAME_MAX, fp);
188+
int bytes_read = fread(service->daemon_version, 1, FILENAME_MAX, fp);
189189
if (bytes_read == 0) {
190190
ERR("Reading process' stdout failed");
191191
res = 3;
@@ -205,27 +205,27 @@ bool service_method_start(LSHandle* sh, LSMessage* msg, void* data)
205205
LSErrorInit(&lserror);
206206

207207
jvalue_ref jobj = jobject_create();
208-
int res = hyperiond_start(service);
208+
int res = daemon_start(service);
209209

210210
jobject_set(jobj, j_cstr_to_buffer("returnValue"), jboolean_create(res == 0));
211211
switch (res) {
212212
case 0:
213-
jobject_set(jobj, j_cstr_to_buffer("status"), jstring_create("Hyperion.NG started successfully"));
213+
jobject_set(jobj, j_cstr_to_buffer("status"), jstring_create("Daemon started successfully"));
214214
break;
215215
case 1:
216216
jobject_set(jobj, j_cstr_to_buffer("status"), jstring_create("Precondition fail: Not running elevated!"));
217217
break;
218218
case 2:
219-
jobject_set(jobj, j_cstr_to_buffer("status"), jstring_create("Hyperion.NG is already running"));
219+
jobject_set(jobj, j_cstr_to_buffer("status"), jstring_create("Daemon is already running"));
220220
break;
221221
case 3:
222-
jobject_set(jobj, j_cstr_to_buffer("status"), jstring_create("Hyperion.NG failed to start, posix_spawn failed"));
222+
jobject_set(jobj, j_cstr_to_buffer("status"), jstring_create("Daemon failed to start, posix_spawn failed"));
223223
break;
224224
case 4:
225-
jobject_set(jobj, j_cstr_to_buffer("status"), jstring_create("Hyperion.NG failed to start, pthread_create failed"));
225+
jobject_set(jobj, j_cstr_to_buffer("status"), jstring_create("Daemon failed to start, pthread_create failed"));
226226
break;
227227
default:
228-
jobject_set(jobj, j_cstr_to_buffer("status"), jstring_create("Hyperion.NG failed to start, reason: Unknown"));
228+
jobject_set(jobj, j_cstr_to_buffer("status"), jstring_create("Daemon failed to start, reason: Unknown"));
229229
}
230230
LSMessageReply(sh, msg, jvalue_tostring_simple(jobj), &lserror);
231231

@@ -241,20 +241,20 @@ bool service_method_stop(LSHandle* sh, LSMessage* msg, void* data)
241241
LSErrorInit(&lserror);
242242

243243
jvalue_ref jobj = jobject_create();
244-
int res = hyperiond_stop(service);
244+
int res = daemon_stop(service);
245245
jobject_set(jobj, j_cstr_to_buffer("returnValue"), jboolean_create(res == 0));
246246
switch (res) {
247247
case 0:
248-
jobject_set(jobj, j_cstr_to_buffer("status"), jstring_create("Hyperion.NG stopped successfully"));
248+
jobject_set(jobj, j_cstr_to_buffer("status"), jstring_create("Daemon stopped successfully"));
249249
break;
250250
case 1:
251251
jobject_set(jobj, j_cstr_to_buffer("status"), jstring_create("Precondition fail: Not running elevated!"));
252252
break;
253253
case 2:
254-
jobject_set(jobj, j_cstr_to_buffer("status"), jstring_create("Hyperion.NG is not running"));
254+
jobject_set(jobj, j_cstr_to_buffer("status"), jstring_create("Daemon is not running"));
255255
break;
256256
default:
257-
jobject_set(jobj, j_cstr_to_buffer("status"), jstring_create("Hyperion.NG failed to stop, reason: Unknown"));
257+
jobject_set(jobj, j_cstr_to_buffer("status"), jstring_create("Daemon failed to stop, reason: Unknown"));
258258
}
259259
LSMessageReply(sh, msg, jvalue_tostring_simple(jobj), &lserror);
260260

@@ -270,12 +270,12 @@ bool service_method_version(LSHandle* sh, LSMessage* msg, void* data)
270270
LSErrorInit(&lserror);
271271

272272
jvalue_ref jobj = jobject_create();
273-
int res = hyperiond_version(service);
273+
int res = daemon_version(service);
274274
jobject_set(jobj, j_cstr_to_buffer("returnValue"), jboolean_create(res == 0));
275275
jobject_set(jobj, j_cstr_to_buffer("returnCode"), jnumber_create_i32(res));
276276
switch (res) {
277277
case 0:
278-
jobject_set(jobj, j_cstr_to_buffer("version"), jstring_create(service->hyperiond_version));
278+
jobject_set(jobj, j_cstr_to_buffer("version"), jstring_create(service->daemon_version));
279279
break;
280280
default:
281281
jobject_set(jobj, j_cstr_to_buffer("version"), jstring_create("Error while fetching"));
@@ -299,6 +299,7 @@ bool service_method_status(LSHandle* sh, LSMessage* msg, void* data)
299299
jobject_set(jobj, j_cstr_to_buffer("running"), jboolean_create(is_running(service->daemon_pid)));
300300
jobject_set(jobj, j_cstr_to_buffer("elevated"), jboolean_create(is_elevated()));
301301
jobject_set(jobj, j_cstr_to_buffer("pid"), jnumber_create_i32(service->daemon_pid));
302+
jobject_set(jobj, j_cstr_to_buffer("daemon"), jstring_create(DAEMON_NAME));
302303

303304
LSMessageReply(sh, msg, jvalue_tostring_simple(jobj), &lserror);
304305

@@ -343,7 +344,7 @@ int main()
343344
LSError lserror;
344345

345346
service.daemon_pid = 0;
346-
service.hyperiond_version = NULL;
347+
service.daemon_version = NULL;
347348

348349
log_init();
349350
log_set_level(Debug);

service/src/service.h

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -5,10 +5,12 @@
55
#include <pthread.h>
66

77
#define SERVICE_NAME "org.webosbrew.hyperion.ng.loader.service"
8-
#define HYPERION_PATH "/media/developer/apps/usr/palm/services/org.webosbrew.hyperion.ng.loader.service/hyperion"
8+
#define DAEMON_PATH "/media/developer/apps/usr/palm/services/org.webosbrew.hyperion.ng.loader.service/hyperion"
9+
#define DAEMON_EXECUTABLE "hyperiond"
10+
#define DAEMON_NAME "Hyperion.NG"
911

1012
typedef struct {
11-
char *hyperiond_version;
13+
char *daemon_version;
1214
pid_t daemon_pid;
1315
pthread_t execution_thread;
1416
} service_t;

0 commit comments

Comments
 (0)