coccinelle: make use of SYNTHETIC_ERRNO
Ideally, coccinelle would strip unnecessary braces too. But I do not see any option in coccinelle for this, so instead, I edited the patch text using search&replace to remove the braces. Unfortunately this is not fully automatic, in particular it didn't deal well with if-else-if-else blocks and ifdefs, so there is an increased likelikehood be some bugs in such spots. I also removed part of the patch that coccinelle generated for udev, where we returns -1 for failure. This should be fixed independently.
This commit is contained in:
@@ -41,10 +41,9 @@ static int curl_glue_on_io(sd_event_source *s, int fd, uint32_t revents, void *u
|
||||
else
|
||||
action = 0;
|
||||
|
||||
if (curl_multi_socket_action(g->curl, translated_fd, action, &k) != CURLM_OK) {
|
||||
log_debug("Failed to propagate IO event.");
|
||||
return -EINVAL;
|
||||
}
|
||||
if (curl_multi_socket_action(g->curl, translated_fd, action, &k) != CURLM_OK)
|
||||
return log_debug_errno(SYNTHETIC_ERRNO(EINVAL),
|
||||
"Failed to propagate IO event.");
|
||||
|
||||
curl_glue_check_finished(g);
|
||||
return 0;
|
||||
@@ -151,10 +150,9 @@ static int curl_glue_on_timer(sd_event_source *s, uint64_t usec, void *userdata)
|
||||
assert(s);
|
||||
assert(g);
|
||||
|
||||
if (curl_multi_socket_action(g->curl, CURL_SOCKET_TIMEOUT, 0, &k) != CURLM_OK) {
|
||||
log_debug("Failed to propagate timeout.");
|
||||
return -EINVAL;
|
||||
}
|
||||
if (curl_multi_socket_action(g->curl, CURL_SOCKET_TIMEOUT, 0, &k) != CURLM_OK)
|
||||
return log_debug_errno(SYNTHETIC_ERRNO(EINVAL),
|
||||
"Failed to propagate timeout.");
|
||||
|
||||
curl_glue_check_finished(g);
|
||||
return 0;
|
||||
|
||||
+3
-4
@@ -253,10 +253,9 @@ static int parse_argv(int argc, char *argv[]) {
|
||||
arg_compress = IMPORT_COMPRESS_GZIP;
|
||||
else if (streq(optarg, "bzip2"))
|
||||
arg_compress = IMPORT_COMPRESS_BZIP2;
|
||||
else {
|
||||
log_error("Unknown format: %s", optarg);
|
||||
return -EINVAL;
|
||||
}
|
||||
else
|
||||
return log_error_errno(SYNTHETIC_ERRNO(EINVAL),
|
||||
"Unknown format: %s", optarg);
|
||||
break;
|
||||
|
||||
case '?':
|
||||
|
||||
@@ -338,10 +338,9 @@ static int verify_one(PullJob *checksum_job, PullJob *job) {
|
||||
if (r < 0)
|
||||
return log_oom();
|
||||
|
||||
if (!filename_is_valid(fn)) {
|
||||
log_error("Cannot verify checksum, could not determine server-side file name.");
|
||||
return -EBADMSG;
|
||||
}
|
||||
if (!filename_is_valid(fn))
|
||||
return log_error_errno(SYNTHETIC_ERRNO(EBADMSG),
|
||||
"Cannot verify checksum, could not determine server-side file name.");
|
||||
|
||||
line = strjoina(job->checksum, " *", fn, "\n");
|
||||
|
||||
@@ -359,10 +358,9 @@ static int verify_one(PullJob *checksum_job, PullJob *job) {
|
||||
strlen(line));
|
||||
}
|
||||
|
||||
if (!p || (p != (char*) checksum_job->payload && p[-1] != '\n')) {
|
||||
log_error("DOWNLOAD INVALID: Checksum of %s file did not checkout, file has been tampered with.", fn);
|
||||
return -EBADMSG;
|
||||
}
|
||||
if (!p || (p != (char*) checksum_job->payload && p[-1] != '\n'))
|
||||
return log_error_errno(SYNTHETIC_ERRNO(EBADMSG),
|
||||
"DOWNLOAD INVALID: Checksum of %s file did not checkout, file has been tampered with.", fn);
|
||||
|
||||
log_info("SHA256 checksum of %s is valid.", job->url);
|
||||
return 1;
|
||||
|
||||
+18
-28
@@ -214,15 +214,13 @@ static int pull_job_write_uncompressed(const void *p, size_t sz, void *userdata)
|
||||
if (sz <= 0)
|
||||
return 0;
|
||||
|
||||
if (j->written_uncompressed + sz < j->written_uncompressed) {
|
||||
log_error("File too large, overflow");
|
||||
return -EOVERFLOW;
|
||||
}
|
||||
if (j->written_uncompressed + sz < j->written_uncompressed)
|
||||
return log_error_errno(SYNTHETIC_ERRNO(EOVERFLOW),
|
||||
"File too large, overflow");
|
||||
|
||||
if (j->written_uncompressed + sz > j->uncompressed_max) {
|
||||
log_error("File overly large, refusing");
|
||||
return -EFBIG;
|
||||
}
|
||||
if (j->written_uncompressed + sz > j->uncompressed_max)
|
||||
return log_error_errno(SYNTHETIC_ERRNO(EFBIG),
|
||||
"File overly large, refusing");
|
||||
|
||||
if (j->disk_fd >= 0) {
|
||||
|
||||
@@ -240,10 +238,8 @@ static int pull_job_write_uncompressed(const void *p, size_t sz, void *userdata)
|
||||
}
|
||||
if (n < 0)
|
||||
return log_error_errno((int) n, "Failed to write file: %m");
|
||||
if ((size_t) n < sz) {
|
||||
log_error("Short write");
|
||||
return -EIO;
|
||||
}
|
||||
if ((size_t) n < sz)
|
||||
return log_error_errno(SYNTHETIC_ERRNO(EIO), "Short write");
|
||||
} else {
|
||||
|
||||
if (!GREEDY_REALLOC(j->payload, j->payload_allocated, j->payload_size + sz))
|
||||
@@ -268,21 +264,16 @@ static int pull_job_write_compressed(PullJob *j, void *p, size_t sz) {
|
||||
if (sz <= 0)
|
||||
return 0;
|
||||
|
||||
if (j->written_compressed + sz < j->written_compressed) {
|
||||
log_error("File too large, overflow");
|
||||
return -EOVERFLOW;
|
||||
}
|
||||
if (j->written_compressed + sz < j->written_compressed)
|
||||
return log_error_errno(SYNTHETIC_ERRNO(EOVERFLOW), "File too large, overflow");
|
||||
|
||||
if (j->written_compressed + sz > j->compressed_max) {
|
||||
log_error("File overly large, refusing.");
|
||||
return -EFBIG;
|
||||
}
|
||||
if (j->written_compressed + sz > j->compressed_max)
|
||||
return log_error_errno(SYNTHETIC_ERRNO(EFBIG), "File overly large, refusing.");
|
||||
|
||||
if (j->content_length != (uint64_t) -1 &&
|
||||
j->written_compressed + sz > j->content_length) {
|
||||
log_error("Content length incorrect.");
|
||||
return -EFBIG;
|
||||
}
|
||||
j->written_compressed + sz > j->content_length)
|
||||
return log_error_errno(SYNTHETIC_ERRNO(EFBIG),
|
||||
"Content length incorrect.");
|
||||
|
||||
if (j->checksum_context)
|
||||
gcry_md_write(j->checksum_context, p, sz);
|
||||
@@ -323,10 +314,9 @@ static int pull_job_open_disk(PullJob *j) {
|
||||
if (j->calc_checksum) {
|
||||
initialize_libgcrypt(false);
|
||||
|
||||
if (gcry_md_open(&j->checksum_context, GCRY_MD_SHA256, 0) != 0) {
|
||||
log_error("Failed to initialize hash context.");
|
||||
return -EIO;
|
||||
}
|
||||
if (gcry_md_open(&j->checksum_context, GCRY_MD_SHA256, 0) != 0)
|
||||
return log_error_errno(SYNTHETIC_ERRNO(EIO),
|
||||
"Failed to initialize hash context.");
|
||||
}
|
||||
|
||||
return 0;
|
||||
|
||||
+3
-4
@@ -271,10 +271,9 @@ static int parse_argv(int argc, char *argv[]) {
|
||||
|
||||
case ARG_VERIFY:
|
||||
arg_verify = import_verify_from_string(optarg);
|
||||
if (arg_verify < 0) {
|
||||
log_error("Invalid verification setting '%s'", optarg);
|
||||
return -EINVAL;
|
||||
}
|
||||
if (arg_verify < 0)
|
||||
return log_error_errno(SYNTHETIC_ERRNO(EINVAL),
|
||||
"Invalid verification setting '%s'", optarg);
|
||||
|
||||
break;
|
||||
|
||||
|
||||
Reference in New Issue
Block a user