[Replicant] [libsamsung-ipc][PATCH 16/48] samsung-ipc: utils: switch to Linux code style
Denis 'GNUtoo' Carikli
GNUtoo at cyberdimension.org
Sun Apr 5 18:20:50 UTC 2020
This contains no functional changes.
The commented out code if any has also been preserved as it
could be relevant to the understanding of the code.
It will be kept until we understand why the code has been
commented. In that case we either need to remove it completely
or to replace it by a comment explaining why not having that
code was necessary.
Signed-off-by: Denis 'GNUtoo' Carikli <GNUtoo at cyberdimension.org>
---
samsung-ipc/utils.c | 634 +++++++++++++++++++++++---------------------
1 file changed, 326 insertions(+), 308 deletions(-)
diff --git a/samsung-ipc/utils.c b/samsung-ipc/utils.c
index 1bba874..99bdf88 100644
--- a/samsung-ipc/utils.c
+++ b/samsung-ipc/utils.c
@@ -37,446 +37,464 @@
void *file_data_read(struct ipc_client *client, const char *path, size_t size,
size_t chunk_size, unsigned int offset)
{
- void *data = NULL;
- int fd = -1;
- size_t count;
- off_t seek;
- unsigned char *p;
- int rc;
-
- if (path == NULL || size == 0 || chunk_size == 0 || chunk_size > size) {
- if (path == NULL) {
- ipc_client_log(client, "%s: Failed: path is NULL", __FUNCTION__);
- }
- if (size == 0) {
- ipc_client_log(client, "%s: Failed: size is 0", __FUNCTION__);
- }
- if (chunk_size == 0) {
- ipc_client_log(client, "%s: Failed: chunk_size is 0", __FUNCTION__);
- }
- if (chunk_size > size) {
- ipc_client_log(client, "%s: Failed: chunk_size > size ", __FUNCTION__);
- }
-
- return NULL;
- }
-
- fd = open(path, O_RDONLY);
- if (fd < 0) {
- ipc_client_log(client, "%s: Error: fd: %d ", __FUNCTION__, fd);
- goto error;
- }
-
- seek = lseek(fd, (off_t) offset, SEEK_SET);
- if (seek < (off_t) offset) {
- ipc_client_log(client, "%s: Error: seek < (off_t) offset", __FUNCTION__);
- goto error;
- }
-
- data = calloc(1, size);
-
- p = (unsigned char *) data;
-
- count = 0;
- while (count < size) {
- rc = read(fd, p, size - count > chunk_size ? chunk_size : size - count);
- if (rc <= 0) {
- ipc_client_log(client, "%s: Error: rc < 0", __FUNCTION__);
+ void *data = NULL;
+ int fd = -1;
+ size_t count;
+ off_t seek;
+ unsigned char *p;
+ int rc;
+
+ if (path == NULL || size == 0 || chunk_size == 0 || chunk_size > size) {
+ if (path == NULL) {
+ ipc_client_log(client, "%s: Failed: path is NULL",
+ __FUNCTION__);
+ }
+ if (size == 0) {
+ ipc_client_log(client, "%s: Failed: size is 0",
+ __FUNCTION__);
+ }
+ if (chunk_size == 0) {
+ ipc_client_log(client, "%s: Failed: chunk_size is 0",
+ __FUNCTION__);
+ }
+ if (chunk_size > size) {
+ ipc_client_log(client, "%s: Failed: chunk_size > size ",
+ __FUNCTION__);
+ }
+
+ return NULL;
+ }
+
+ fd = open(path, O_RDONLY);
+ if (fd < 0) {
+ ipc_client_log(client, "%s: Error: fd: %d ", __FUNCTION__, fd);
+ goto error;
+ }
+
+ seek = lseek(fd, (off_t) offset, SEEK_SET);
+ if (seek < (off_t) offset) {
+ ipc_client_log(client, "%s: Error: seek < (off_t) offset",
+ __FUNCTION__);
goto error;
}
- p += rc;
- count += rc;
- }
+ data = calloc(1, size);
+
+ p = (unsigned char *) data;
- goto complete;
+ count = 0;
+ while (count < size) {
+ rc = read(fd, p,
+ size - count > chunk_size ?
+ chunk_size : size - count);
+ if (rc <= 0) {
+ ipc_client_log(client, "%s: Error: rc < 0",
+ __FUNCTION__);
+ goto error;
+ }
+
+ p += rc;
+ count += rc;
+ }
+
+ goto complete;
error:
- if (data != NULL) {
- free(data);
- data = NULL;
- }
+ if (data != NULL) {
+ free(data);
+ data = NULL;
+ }
complete:
- if (fd >= 0)
- close(fd);
+ if (fd >= 0)
+ close(fd);
- return data;
+ return data;
}
int file_data_write(struct ipc_client *client, const char *path,
- const void *data, size_t size, size_t chunk_size,
- unsigned int offset)
+ const void *data, size_t size, size_t chunk_size,
+ unsigned int offset)
{
- int fd = -1;
- size_t count;
- off_t seek;
- unsigned char *p;
- int rc;
-
- if (path == NULL || data == NULL || size == 0 || chunk_size == 0 || chunk_size > size) {
- if (path == NULL) {
- ipc_client_log(client, "%s failed: path is NULL", __FUNCTION__);
- }
- if (size == 0) {
- ipc_client_log(client, "%s failed: size is 0", __FUNCTION__);
- }
- if (chunk_size == 0) {
- ipc_client_log(client, "%s failed: chunk_size is 0", __FUNCTION__);
- }
- if (chunk_size > size) {
- ipc_client_log(client, "%s failed: chunk_size > size",
- __FUNCTION__);
- }
- return -1;
- }
-
- fd = open(path, O_WRONLY | O_CREAT, S_IRUSR | S_IWUSR | S_IRGRP | S_IROTH);
- if (fd < 0) {
- ipc_client_log(client, "%s: open failed with error %d", __FUNCTION__, fd);
- goto error;
- }
-
- seek = lseek(fd, (off_t) offset, SEEK_SET);
- if (seek < (off_t) offset) {
- ipc_client_log(client, "%s failed: seek < (off_t) offset", __FUNCTION__);
- goto error;
- }
-
- p = (unsigned char *) data;
-
- count = 0;
- while (count < size) {
- rc = write(fd, p, size - count > chunk_size ? chunk_size : size - count);
- if (rc <= 0) {
- ipc_client_log(client, "%s: write failed with error %d", __FUNCTION__, rc);
- goto error;
- }
-
- p += rc;
- count += rc;
- }
-
- rc = 0;
- goto complete;
+ int fd = -1;
+ size_t count;
+ off_t seek;
+ unsigned char *p;
+ int rc;
+
+ if (path == NULL || data == NULL || size == 0 || chunk_size == 0 ||
+ chunk_size > size) {
+ if (path == NULL) {
+ ipc_client_log(client, "%s failed: path is NULL",
+ __FUNCTION__);
+ }
+ if (size == 0) {
+ ipc_client_log(client, "%s failed: size is 0",
+ __FUNCTION__);
+ }
+ if (chunk_size == 0) {
+ ipc_client_log(client, "%s failed: chunk_size is 0",
+ __FUNCTION__);
+ }
+ if (chunk_size > size) {
+ ipc_client_log(client, "%s failed: chunk_size > size",
+ __FUNCTION__);
+ }
+ return -1;
+ }
+
+ fd = open(path, O_WRONLY | O_CREAT, S_IRUSR | S_IWUSR | S_IRGRP |
+ S_IROTH);
+ if (fd < 0) {
+ ipc_client_log(client, "%s: open failed with error %d",
+ __FUNCTION__, fd);
+ goto error;
+ }
+
+ seek = lseek(fd, (off_t) offset, SEEK_SET);
+ if (seek < (off_t) offset) {
+ ipc_client_log(client, "%s failed: seek < (off_t) offset",
+ __FUNCTION__);
+ goto error;
+ }
+
+ p = (unsigned char *) data;
+
+ count = 0;
+ while (count < size) {
+ rc = write(fd, p,
+ size - count > chunk_size ?
+ chunk_size : size - count);
+ if (rc <= 0) {
+ ipc_client_log(client, "%s: write failed with error %d",
+ __FUNCTION__, rc);
+ goto error;
+ }
+
+ p += rc;
+ count += rc;
+ }
+
+ rc = 0;
+ goto complete;
error:
- rc = -1;
+ rc = -1;
complete:
- if (fd >= 0)
- close(fd);
+ if (fd >= 0)
+ close(fd);
- return rc;
+ return rc;
}
int network_iface_up(const char *iface, int domain, int type)
{
- struct ifreq ifr;
- int fd = -1;
- int rc;
+ struct ifreq ifr;
+ int fd = -1;
+ int rc;
- if (iface == NULL)
- return -1;
+ if (iface == NULL)
+ return -1;
- memset(&ifr, 0, sizeof(ifr));
- strncpy(ifr.ifr_name, iface, IFNAMSIZ);
+ memset(&ifr, 0, sizeof(ifr));
+ strncpy(ifr.ifr_name, iface, IFNAMSIZ);
- fd = socket(domain, type, 0);
- if (fd < 0)
- goto error;
+ fd = socket(domain, type, 0);
+ if (fd < 0)
+ goto error;
- rc = ioctl(fd, SIOCGIFFLAGS, &ifr);
- if (rc < 0)
- goto error;
+ rc = ioctl(fd, SIOCGIFFLAGS, &ifr);
+ if (rc < 0)
+ goto error;
- ifr.ifr_flags |= IFF_UP;
+ ifr.ifr_flags |= IFF_UP;
- rc = ioctl(fd, SIOCSIFFLAGS, &ifr);
- if (rc < 0)
- goto error;
+ rc = ioctl(fd, SIOCSIFFLAGS, &ifr);
+ if (rc < 0)
+ goto error;
- rc = 0;
- goto complete;
+ rc = 0;
+ goto complete;
error:
- rc = -1;
+ rc = -1;
complete:
- if (fd >= 0)
- close(fd);
+ if (fd >= 0)
+ close(fd);
- return rc;
+ return rc;
}
int network_iface_down(const char *iface, int domain, int type)
{
- struct ifreq ifr;
- int fd = -1;
- int rc;
+ struct ifreq ifr;
+ int fd = -1;
+ int rc;
- if (iface == NULL)
- return -1;
+ if (iface == NULL)
+ return -1;
- memset(&ifr, 0, sizeof(ifr));
- strncpy(ifr.ifr_name, iface, IFNAMSIZ);
+ memset(&ifr, 0, sizeof(ifr));
+ strncpy(ifr.ifr_name, iface, IFNAMSIZ);
- fd = socket(domain, type, 0);
- if (fd < 0)
- goto error;
+ fd = socket(domain, type, 0);
+ if (fd < 0)
+ goto error;
- rc = ioctl(fd, SIOCGIFFLAGS, &ifr);
- if (rc < 0)
- goto error;
+ rc = ioctl(fd, SIOCGIFFLAGS, &ifr);
+ if (rc < 0)
+ goto error;
- ifr.ifr_flags = (ifr.ifr_flags & (~IFF_UP));
+ ifr.ifr_flags = (ifr.ifr_flags & (~IFF_UP));
- rc = ioctl(fd, SIOCSIFFLAGS, &ifr);
- if (rc < 0)
- goto error;
+ rc = ioctl(fd, SIOCSIFFLAGS, &ifr);
+ if (rc < 0)
+ goto error;
- rc = 0;
- goto complete;
+ rc = 0;
+ goto complete;
error:
- rc = -1;
+ rc = -1;
complete:
- if (fd >= 0)
- close(fd);
+ if (fd >= 0)
+ close(fd);
- return rc;
+ return rc;
}
int sysfs_value_read(const char *path)
{
- char buffer[100];
- int value;
- int fd = -1;
- int rc;
+ char buffer[100];
+ int value;
+ int fd = -1;
+ int rc;
- if (path == NULL)
- return -1;
+ if (path == NULL)
+ return -1;
- fd = open(path, O_RDONLY);
- if (fd < 0)
- goto error;
+ fd = open(path, O_RDONLY);
+ if (fd < 0)
+ goto error;
- rc = read(fd, &buffer, sizeof(buffer));
- if (rc <= 0)
- goto error;
+ rc = read(fd, &buffer, sizeof(buffer));
+ if (rc <= 0)
+ goto error;
- value = atoi(buffer);
- goto complete;
+ value = atoi(buffer);
+ goto complete;
error:
- value = -1;
+ value = -1;
complete:
- if (fd >= 0)
- close(fd);
+ if (fd >= 0)
+ close(fd);
- return value;
+ return value;
}
int sysfs_value_write(const char *path, int value)
{
- char buffer[100];
- int fd = -1;
- int rc;
+ char buffer[100];
+ int fd = -1;
+ int rc;
- if (path == NULL)
- return -1;
+ if (path == NULL)
+ return -1;
- fd = open(path, O_WRONLY);
- if (fd < 0)
- goto error;
+ fd = open(path, O_WRONLY);
+ if (fd < 0)
+ goto error;
- snprintf((char *) &buffer, sizeof(buffer), "%d\n", value);
+ snprintf((char *) &buffer, sizeof(buffer), "%d\n", value);
- rc = write(fd, buffer, strlen(buffer));
- if (rc < (int) strlen(buffer))
- goto error;
+ rc = write(fd, buffer, strlen(buffer));
+ if (rc < (int) strlen(buffer))
+ goto error;
- rc = 0;
- goto complete;
+ rc = 0;
+ goto complete;
error:
- rc = -1;
+ rc = -1;
complete:
- if (fd >= 0)
- close(fd);
+ if (fd >= 0)
+ close(fd);
- return rc;
+ return rc;
}
char *sysfs_string_read(const char *path, size_t length)
{
- char *string = NULL;
- int fd = -1;
- int rc;
+ char *string = NULL;
+ int fd = -1;
+ int rc;
- if (path == NULL || length == 0)
- return NULL;
+ if (path == NULL || length == 0)
+ return NULL;
- fd = open(path, O_RDONLY);
- if (fd < 0)
- goto error;
+ fd = open(path, O_RDONLY);
+ if (fd < 0)
+ goto error;
- string = (char *) calloc(1, length);
+ string = (char *) calloc(1, length);
- rc = read(fd, string, length);
- if (rc <= 0)
- goto error;
+ rc = read(fd, string, length);
+ if (rc <= 0)
+ goto error;
- goto complete;
+ goto complete;
error:
- if (string != NULL) {
- free(string);
- string = NULL;
- }
+ if (string != NULL) {
+ free(string);
+ string = NULL;
+ }
complete:
- if (fd >= 0)
- close(fd);
+ if (fd >= 0)
+ close(fd);
- return string;
+ return string;
}
int sysfs_string_write(const char *path, const char *buffer, size_t length)
{
- int fd = -1;
- int rc;
+ int fd = -1;
+ int rc;
- if (path == NULL || buffer == NULL || length == 0)
- return -1;
+ if (path == NULL || buffer == NULL || length == 0)
+ return -1;
- fd = open(path, O_WRONLY);
- if (fd < 0)
- goto error;
+ fd = open(path, O_WRONLY);
+ if (fd < 0)
+ goto error;
- rc = write(fd, buffer, length);
- if (rc < (int) length)
- goto error;
+ rc = write(fd, buffer, length);
+ if (rc < (int) length)
+ goto error;
- rc = 0;
- goto complete;
+ rc = 0;
+ goto complete;
error:
- rc = -1;
+ rc = -1;
complete:
- if (fd >= 0)
- close(fd);
+ if (fd >= 0)
+ close(fd);
- return rc;
+ return rc;
}
size_t data2string_length(const void *data, size_t size)
{
- size_t length;
+ size_t length;
- if (data == NULL || size == 0)
- return 0;
+ if (data == NULL || size == 0)
+ return 0;
- length = size * 2 + 1;
+ length = size * 2 + 1;
- return length;
+ return length;
}
char *data2string(const void *data, size_t size)
{
- char *string;
- size_t length;
- char *p;
- size_t i;
+ char *string;
+ size_t length;
+ char *p;
+ size_t i;
- if (data == NULL || size == 0)
- return NULL;
+ if (data == NULL || size == 0)
+ return NULL;
- length = data2string_length(data, size);
- if (length == 0)
- return NULL;
+ length = data2string_length(data, size);
+ if (length == 0)
+ return NULL;
- string = (char *) calloc(1, length);
+ string = (char *) calloc(1, length);
- p = string;
+ p = string;
- for (i = 0; i < size; i++) {
- sprintf(p, "%02x", *((unsigned char *) data + i));
- p += 2 * sizeof(char);
- }
+ for (i = 0; i < size; i++) {
+ sprintf(p, "%02x", *((unsigned char *) data + i));
+ p += 2 * sizeof(char);
+ }
- return string;
+ return string;
}
size_t string2data_size(const char *string)
{
- size_t length;
- size_t size;
+ size_t length;
+ size_t size;
- if (string == NULL)
- return 0;
+ if (string == NULL)
+ return 0;
- length = strlen(string);
- if (length == 0)
- return 0;
+ length = strlen(string);
+ if (length == 0)
+ return 0;
- if (length % 2 == 0)
- size = length / 2;
- else
- size = (length - (length % 2)) / 2 + 1;
+ if (length % 2 == 0)
+ size = length / 2;
+ else
+ size = (length - (length % 2)) / 2 + 1;
- return size;
+ return size;
}
void *string2data(const char *string)
{
- void *data;
- size_t size;
- size_t length;
- int shift;
- unsigned char *p;
- unsigned int b;
- size_t i;
- int rc;
-
- if (string == NULL)
- return NULL;
-
- length = strlen(string);
- if (length == 0)
- return NULL;
-
- if (length % 2 == 0)
- shift = 0;
- else
- shift = 1;
-
- size = string2data_size(string);
- if (size == 0)
- return NULL;
-
- data = calloc(1, size);
-
- p = (unsigned char *) data;
-
- for (i = 0; i < length; i++) {
- rc = sscanf(&string[i], "%01x", &b);
- if (rc < 1)
- b = 0;
-
- if ((shift % 2) == 0)
- *p |= ((b & 0x0f) << 4);
- else
- *p++ |= b & 0x0f;
-
- shift++;
- }
+ void *data;
+ size_t size;
+ size_t length;
+ int shift;
+ unsigned char *p;
+ unsigned int b;
+ size_t i;
+ int rc;
+
+ if (string == NULL)
+ return NULL;
+
+ length = strlen(string);
+ if (length == 0)
+ return NULL;
+
+ if (length % 2 == 0)
+ shift = 0;
+ else
+ shift = 1;
+
+ size = string2data_size(string);
+ if (size == 0)
+ return NULL;
+
+ data = calloc(1, size);
+
+ p = (unsigned char *) data;
+
+ for (i = 0; i < length; i++) {
+ rc = sscanf(&string[i], "%01x", &b);
+ if (rc < 1) {
+ b = 0;
+ }
+
+ if ((shift % 2) == 0) {
+ *p |= ((b & 0x0f) << 4);
+ } else {
+ *p++ |= b & 0x0f;
+ }
+
+ shift++;
+ }
- return data;
+ return data;
}
-
-// vim:ts=4:sw=4:expandtab
--
2.26.0
More information about the Replicant
mailing list