summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--gpsd.c7
-rw-r--r--shmexport.c13
2 files changed, 10 insertions, 10 deletions
diff --git a/gpsd.c b/gpsd.c
index e8d02e3e..782df039 100644
--- a/gpsd.c
+++ b/gpsd.c
@@ -1999,12 +1999,7 @@ int main(int argc, char *argv[])
#ifdef SHM_EXPORT_ENABLE
/* create the shared segment as root so readers can't mess with it */
- if (!shm_acquire(&context)) {
- gpsd_report(&context.errout, LOG_ERROR,
- "shared-segment creation failed,\n");
- } else
- gpsd_report(&context.errout, LOG_PROG,
- "shared-segment creation succeeded,\n");
+ (void)shm_acquire(&context);
#endif /* SHM_EXPORT_ENABLE */
/*
diff --git a/shmexport.c b/shmexport.c
index 625f570a..229ad697 100644
--- a/shmexport.c
+++ b/shmexport.c
@@ -41,12 +41,17 @@ bool shm_acquire(struct gps_context_t *context)
int shmid = shmget((key_t)shmkey, sizeof(struct gps_data_t), (int)(IPC_CREAT|0666));
if (shmid == -1) {
gpsd_report(&context->errout, LOG_ERROR,
- "shmget(%ld, %zd, 0666) failed: %s\n",
- (long int)shmkey,
+ "shmget(%x, %zd, 0666) for SHM export failed: %s\n",
+ shmkey,
sizeof(struct gps_data_t),
strerror(errno));
return false;
- }
+ } else
+ gpsd_report(&context->errout, LOG_PROG,
+ "shmget(%x, %zd, 0666) for SHM export succeeded\n",
+ shmkey,
+ sizeof(struct gps_data_t));
+
context->shmexport = (void *)shmat(shmid, 0, 0);
if ((int)(long)context->shmexport == -1) {
gpsd_report(&context->errout, LOG_ERROR, "shmat failed: %s\n", strerror(errno));
@@ -54,7 +59,7 @@ bool shm_acquire(struct gps_context_t *context)
return false;
}
gpsd_report(&context->errout, LOG_PROG,
- "shmat() succeeded, segment %d\n", shmid);
+ "shmat() for SHM export succeeded, segment %d\n", shmid);
return true;
}