From c815acfb5863d9562a3f1e9cbd6204da3364860c Mon Sep 17 00:00:00 2001 From: Harald Hoyer Date: Fri, 27 Mar 2015 12:02:49 +0100 Subject: [PATCH] fix gcc warnings about uninitialized variables MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit like: src/shared/install.c: In function ‘unit_file_lookup_state’: src/shared/install.c:1861:16: warning: ‘r’ may be used uninitialized in this function [-Wmaybe-uninitialized] return r < 0 ? r : state; ^ src/shared/install.c:1796:13: note: ‘r’ was declared here int r; ^ Conflicts: src/journal/journal-file.c src/shared/btrfs-util.c src/shared/install.c Cherry-picked from: a7f7d1bde43fc825c49afea3f946f5b4b3d563e0 Related: #1318994 --- src/import/import-job.c | 2 +- src/journal-remote/journal-gatewayd.c | 2 +- src/journal-remote/journal-remote-parse.c | 2 +- src/journal-remote/journal-remote.c | 4 ++-- src/journal/catalog.c | 2 +- src/journal/coredump.c | 4 ++-- src/journal/journal-file.c | 6 +++--- src/journal/journal-vacuum.c | 2 +- src/journal/journalctl.c | 2 +- src/journal/test-journal-stream.c | 2 +- src/libsystemd-network/lldp-tlv.c | 8 ++++---- src/libsystemd-network/sd-dhcp-server.c | 2 +- src/libsystemd-network/sd-pppoe.c | 2 +- src/libsystemd/sd-login/sd-login.c | 2 +- src/network/networkctl.c | 2 +- src/resolve/resolved-dns-transaction.c | 2 +- src/resolve/test-dns-domain.c | 2 +- src/shared/base-filesystem.c | 2 +- src/shared/capability.c | 2 +- src/shared/copy.c | 6 +++--- src/shared/install.c | 2 +- src/shared/logs-show.c | 2 +- src/shared/util.c | 4 ++-- src/test/test-path.c | 2 +- src/test/test-pty.c | 2 +- src/udev/net/link-config.c | 2 +- 26 files changed, 36 insertions(+), 36 deletions(-) diff --git a/src/import/import-job.c b/src/import/import-job.c index 5f9cfd366d..d826f493f8 100644 --- a/src/import/import-job.c +++ b/src/import/import-job.c @@ -80,7 +80,7 @@ void import_job_curl_on_finished(CurlGlue *g, CURL *curl, CURLcode result) { long status; int r; - if (curl_easy_getinfo(curl, CURLINFO_PRIVATE, &j) != CURLE_OK) + if (curl_easy_getinfo(curl, CURLINFO_PRIVATE, (char **)&j) != CURLE_OK) return; if (!j || j->state == IMPORT_JOB_DONE || j->state == IMPORT_JOB_FAILED) diff --git a/src/journal-remote/journal-gatewayd.c b/src/journal-remote/journal-gatewayd.c index 576f7cae7d..d1f0ce3da3 100644 --- a/src/journal-remote/journal-gatewayd.c +++ b/src/journal-remote/journal-gatewayd.c @@ -736,7 +736,7 @@ static int request_handler_machine( RequestMeta *m = connection_cls; int r; _cleanup_free_ char* hostname = NULL, *os_name = NULL; - uint64_t cutoff_from = 0, cutoff_to = 0, usage; + uint64_t cutoff_from = 0, cutoff_to = 0, usage = 0; char *json; sd_id128_t mid, bid; _cleanup_free_ char *v = NULL; diff --git a/src/journal-remote/journal-remote-parse.c b/src/journal-remote/journal-remote-parse.c index 7e62954351..64089da19b 100644 --- a/src/journal-remote/journal-remote-parse.c +++ b/src/journal-remote/journal-remote-parse.c @@ -316,7 +316,7 @@ int process_data(RemoteSource *source) { switch(source->state) { case STATE_LINE: { char *line, *sep; - size_t n; + size_t n = 0; assert(source->data_size == 0); diff --git a/src/journal-remote/journal-remote.c b/src/journal-remote/journal-remote.c index 9c515f9c8f..4fac55cc9a 100644 --- a/src/journal-remote/journal-remote.c +++ b/src/journal-remote/journal-remote.c @@ -353,7 +353,7 @@ static int remove_source(RemoteServer *s, int fd) { static int add_source(RemoteServer *s, int fd, char* name, bool own_name) { - RemoteSource *source; + RemoteSource *source = NULL; int r; /* This takes ownership of name, even on failure, if own_name is true. */ @@ -1148,7 +1148,7 @@ static int dispatch_raw_connection_event(sd_event_source *event, .size = sizeof(union sockaddr_union), .type = SOCK_STREAM, }; - char *hostname; + char *hostname = NULL; fd2 = accept_connection("raw", fd, &addr, &hostname); if (fd2 < 0) diff --git a/src/journal/catalog.c b/src/journal/catalog.c index f170232841..a9c40c6d4f 100644 --- a/src/journal/catalog.c +++ b/src/journal/catalog.c @@ -559,7 +559,7 @@ static const char *find_id(void *p, sd_id128_t id) { int catalog_get(const char* database, sd_id128_t id, char **_text) { _cleanup_close_ int fd = -1; void *p = NULL; - struct stat st; + struct stat st = {}; char *text = NULL; int r; const char *s; diff --git a/src/journal/coredump.c b/src/journal/coredump.c index f7ba0191e1..59ccd46bb0 100644 --- a/src/journal/coredump.c +++ b/src/journal/coredump.c @@ -244,7 +244,7 @@ static int maybe_remove_external_coredump(const char *filename, off_t size) { static int make_filename(const char *info[_INFO_LEN], char **ret) { _cleanup_free_ char *c = NULL, *u = NULL, *p = NULL, *t = NULL; - sd_id128_t boot; + sd_id128_t boot = {}; int r; assert(info); @@ -843,7 +843,7 @@ log: /* Optionally store the entire coredump in the journal */ if (IN_SET(arg_storage, COREDUMP_STORAGE_JOURNAL, COREDUMP_STORAGE_BOTH) && coredump_size <= (off_t) arg_journal_size_max) { - size_t sz; + size_t sz = 0; /* Store the coredump itself in the journal */ diff --git a/src/journal/journal-file.c b/src/journal/journal-file.c index ef18497879..2a93460d4e 100644 --- a/src/journal/journal-file.c +++ b/src/journal/journal-file.c @@ -911,7 +911,7 @@ int journal_file_find_data_object_with_hash( if (o->object.flags & OBJECT_COMPRESSION_MASK) { #if defined(HAVE_XZ) || defined(HAVE_LZ4) uint64_t l; - size_t rsize; + size_t rsize = 0; l = le64toh(o->object.size); if (l <= offsetof(Object, data.payload)) @@ -1075,7 +1075,7 @@ static int journal_file_append_data( #if defined(HAVE_XZ) || defined(HAVE_LZ4) if (JOURNAL_FILE_COMPRESS(f) && size >= COMPRESSION_SIZE_THRESHOLD) { - size_t rsize; + size_t rsize = 0; compression = compress_blob(data, size, o->data.payload, &rsize); @@ -2903,7 +2903,7 @@ int journal_file_copy_entry(JournalFile *from, JournalFile *to, Object *o, uint6 if (o->object.flags & OBJECT_COMPRESSION_MASK) { #if defined(HAVE_XZ) || defined(HAVE_LZ4) - size_t rsize; + size_t rsize = 0; r = decompress_blob(o->object.flags & OBJECT_COMPRESSION_MASK, o->data.payload, l, &from->compress_buffer, &from->compress_buffer_size, &rsize, 0); diff --git a/src/journal/journal-vacuum.c b/src/journal/journal-vacuum.c index 832c327b31..856d11e4ed 100644 --- a/src/journal/journal-vacuum.c +++ b/src/journal/journal-vacuum.c @@ -76,7 +76,7 @@ static void patch_realtime( unsigned long long *realtime) { _cleanup_free_ const char *path = NULL; - usec_t x, crtime; + usec_t x, crtime = 0; /* The timestamp was determined by the file name, but let's * see if the file might actually be older than the file name diff --git a/src/journal/journalctl.c b/src/journal/journalctl.c index a38ce4b8fd..6ba8847798 100644 --- a/src/journal/journalctl.c +++ b/src/journal/journalctl.c @@ -1644,7 +1644,7 @@ static int verify(sd_journal *j) { ORDERED_HASHMAP_FOREACH(f, j->files, i) { int k; - usec_t first, validated, last; + usec_t first = 0, validated = 0, last = 0; #ifdef HAVE_GCRYPT if (!arg_verify_key && JOURNAL_HEADER_SEALED(f->header)) diff --git a/src/journal/test-journal-stream.c b/src/journal/test-journal-stream.c index 3996e778e6..b8caeb3d41 100644 --- a/src/journal/test-journal-stream.c +++ b/src/journal/test-journal-stream.c @@ -42,7 +42,7 @@ static void verify_contents(sd_journal *j, unsigned skip) { const void *d; char *k, *c; size_t l; - unsigned u; + unsigned u = 0; assert_se(sd_journal_get_cursor(j, &k) >= 0); printf("cursor: %s\n", k); diff --git a/src/libsystemd-network/lldp-tlv.c b/src/libsystemd-network/lldp-tlv.c index e43d70d3cf..e32783f3eb 100644 --- a/src/libsystemd-network/lldp-tlv.c +++ b/src/libsystemd-network/lldp-tlv.c @@ -156,7 +156,7 @@ static inline int tlv_packet_read_internal(tlv_section *m, void **data) { } int tlv_packet_read_u8(tlv_packet *m, uint8_t *data) { - void *val; + void *val = NULL; int r; assert_return(m, -EINVAL); @@ -174,7 +174,7 @@ int tlv_packet_read_u8(tlv_packet *m, uint8_t *data) { int tlv_packet_read_u16(tlv_packet *m, uint16_t *data) { uint16_t t; - void *val; + void *val = NULL; int r; assert_return(m, -EINVAL); @@ -211,7 +211,7 @@ int tlv_packet_read_u32(tlv_packet *m, uint32_t *data) { } int tlv_packet_read_string(tlv_packet *m, char **data, uint16_t *data_length) { - void *val; + void *val = NULL; int r; assert_return(m, -EINVAL); @@ -229,7 +229,7 @@ int tlv_packet_read_string(tlv_packet *m, char **data, uint16_t *data_length) { } int tlv_packet_read_bytes(tlv_packet *m, uint8_t **data, uint16_t *data_length) { - void *val; + void *val = NULL; int r; assert_return(m, -EINVAL); diff --git a/src/libsystemd-network/sd-dhcp-server.c b/src/libsystemd-network/sd-dhcp-server.c index 3f89f344d7..0f284eb6a1 100644 --- a/src/libsystemd-network/sd-dhcp-server.c +++ b/src/libsystemd-network/sd-dhcp-server.c @@ -776,7 +776,7 @@ int dhcp_server_handle_message(sd_dhcp_server *server, DHCPMessage *message, if (pool_offset >= 0 && server->bound_leases[pool_offset] == existing_lease) { DHCPLease *lease; - usec_t time_now; + usec_t time_now = 0; if (!existing_lease) { lease = new0(DHCPLease, 1); diff --git a/src/libsystemd-network/sd-pppoe.c b/src/libsystemd-network/sd-pppoe.c index 4f49b799ec..83e58a3db3 100644 --- a/src/libsystemd-network/sd-pppoe.c +++ b/src/libsystemd-network/sd-pppoe.c @@ -340,7 +340,7 @@ static int pppoe_timeout(sd_event_source *s, uint64_t usec, void *userdata); static int pppoe_arm_timeout(sd_pppoe *ppp) { _cleanup_event_source_unref_ sd_event_source *timeout = NULL; - usec_t next_timeout; + usec_t next_timeout = 0; int r; assert(ppp); diff --git a/src/libsystemd/sd-login/sd-login.c b/src/libsystemd/sd-login/sd-login.c index f71749f72d..cc0677bdf2 100644 --- a/src/libsystemd/sd-login/sd-login.c +++ b/src/libsystemd/sd-login/sd-login.c @@ -82,7 +82,7 @@ _public_ int sd_pid_get_owner_uid(pid_t pid, uid_t *uid) { } _public_ int sd_peer_get_session(int fd, char **session) { - struct ucred ucred; + struct ucred ucred = {}; int r; assert_return(fd >= 0, -EINVAL); diff --git a/src/network/networkctl.c b/src/network/networkctl.c index aa83f32f53..778670b733 100644 --- a/src/network/networkctl.c +++ b/src/network/networkctl.c @@ -964,7 +964,7 @@ static int link_lldp_status(int argc, char *argv[], void *userdata) { return -ENOMEM; } else if (streq(a, "_TTL")) { - long long unsigned x; + long long unsigned x = 0; usec_t time; r = safe_atollu(b, &x); diff --git a/src/resolve/resolved-dns-transaction.c b/src/resolve/resolved-dns-transaction.c index 74b0634142..bc1a90db1b 100644 --- a/src/resolve/resolved-dns-transaction.c +++ b/src/resolve/resolved-dns-transaction.c @@ -252,7 +252,7 @@ static int dns_transaction_open_tcp(DnsTransaction *t) { fd = dns_scope_tcp_socket(t->scope, t->received->family, &t->received->sender, t->received->sender_port); else { union in_addr_union address; - int family; + int family = AF_UNSPEC; /* Otherwise, try to talk to the owner of a * the IP address, in case this is a reverse diff --git a/src/resolve/test-dns-domain.c b/src/resolve/test-dns-domain.c index ebc8d98fce..4963a9c6a5 100644 --- a/src/resolve/test-dns-domain.c +++ b/src/resolve/test-dns-domain.c @@ -162,7 +162,7 @@ static void test_dns_name_single_label(void) { static void test_dns_name_reverse_one(const char *address, const char *name) { _cleanup_free_ char *p = NULL; - union in_addr_union a, b; + union in_addr_union a, b = {}; int familya, familyb; assert_se(in_addr_from_string_auto(address, &familya, &a) >= 0); diff --git a/src/shared/base-filesystem.c b/src/shared/base-filesystem.c index 73907c6354..20a69bdbff 100644 --- a/src/shared/base-filesystem.c +++ b/src/shared/base-filesystem.c @@ -55,7 +55,7 @@ static const BaseFilesystem table[] = { int base_filesystem_create(const char *root) { _cleanup_close_ int fd = -1; unsigned i; - int r; + int r = 0; fd = open(root, O_RDONLY|O_NONBLOCK|O_DIRECTORY|O_CLOEXEC|O_NOFOLLOW); if (fd < 0) diff --git a/src/shared/capability.c b/src/shared/capability.c index 915ceb9d9b..2b963fde3f 100644 --- a/src/shared/capability.c +++ b/src/shared/capability.c @@ -55,7 +55,7 @@ unsigned long cap_last_cap(void) { static thread_local unsigned long saved; static thread_local bool valid = false; _cleanup_free_ char *content = NULL; - unsigned long p; + unsigned long p = 0; int r; if (valid) diff --git a/src/shared/copy.c b/src/shared/copy.c index 0239a58066..2a0cb28080 100644 --- a/src/shared/copy.c +++ b/src/shared/copy.c @@ -360,7 +360,7 @@ int copy_file_fd(const char *from, int fdt, bool try_reflink) { } int copy_file(const char *from, const char *to, int flags, mode_t mode, unsigned chattr_flags) { - int fdt, r; + int fdt = -1, r; assert(from); assert(to); @@ -390,7 +390,7 @@ int copy_file(const char *from, const char *to, int flags, mode_t mode, unsigned } int copy_file_atomic(const char *from, const char *to, mode_t mode, bool replace, unsigned chattr_flags) { - _cleanup_free_ char *t; + _cleanup_free_ char *t = NULL; int r; assert(from); @@ -415,7 +415,7 @@ int copy_file_atomic(const char *from, const char *to, mode_t mode, bool replace int copy_times(int fdf, int fdt) { struct timespec ut[2]; struct stat st; - usec_t crtime; + usec_t crtime = 0; assert(fdf >= 0); assert(fdt >= 0); diff --git a/src/shared/install.c b/src/shared/install.c index 9962508b1a..61aaafe7bc 100644 --- a/src/shared/install.c +++ b/src/shared/install.c @@ -2046,7 +2046,7 @@ UnitFileState unit_file_lookup_state( _cleanup_(install_context_done) InstallContext c = {}; InstallInfo *i; UnitFileState state; - int r; + int r = 0; assert(paths); assert(name); diff --git a/src/shared/logs-show.c b/src/shared/logs-show.c index 8c374116ad..a572be94b4 100644 --- a/src/shared/logs-show.c +++ b/src/shared/logs-show.c @@ -993,7 +993,7 @@ static int show_journal(FILE *f, if (warn_cutoff && line < how_many && not_before > 0) { sd_id128_t boot_id; - usec_t cutoff; + usec_t cutoff = 0; /* Check whether the cutoff line is too early */ diff --git a/src/shared/util.c b/src/shared/util.c index 3030261524..4c441a5448 100644 --- a/src/shared/util.c +++ b/src/shared/util.c @@ -3073,7 +3073,7 @@ int getttyname_malloc(int fd, char **ret) { int getttyname_harder(int fd, char **r) { int k; - char *s; + char *s = NULL; k = getttyname_malloc(fd, &s); if (k < 0) @@ -3627,7 +3627,7 @@ char **replace_env_argv(char **argv, char **env) { /* If $FOO appears as single word, replace it by the split up variable */ if ((*i)[0] == '$' && (*i)[1] != '{') { char *e; - char **w, **m; + char **w, **m = NULL; unsigned q; e = strv_env_get(env, *i+1); diff --git a/src/test/test-path.c b/src/test/test-path.c index 4f9f5c1344..a3295aa997 100644 --- a/src/test/test-path.c +++ b/src/test/test-path.c @@ -33,7 +33,7 @@ static int setup_test(Manager **m) { char **tests_path = STRV_MAKE("exists", "existsglobFOOBAR", "changed", "modified", "unit", "directorynotempty", "makedirectory"); char **test_path; - Manager *tmp; + Manager *tmp = NULL; int r; assert_se(m); diff --git a/src/test/test-pty.c b/src/test/test-pty.c index cab569a9da..67c125a4c0 100644 --- a/src/test/test-pty.c +++ b/src/test/test-pty.c @@ -97,7 +97,7 @@ static void run_parent(Pty *pty) { static void test_pty(void) { pid_t pid; - Pty *pty; + Pty *pty = NULL; rcvsiz = 0; zero(rcvbuf); diff --git a/src/udev/net/link-config.c b/src/udev/net/link-config.c index 489593f4fd..ad6a82e506 100644 --- a/src/udev/net/link-config.c +++ b/src/udev/net/link-config.c @@ -474,7 +474,7 @@ int link_config_apply(link_config_ctx *ctx, link_config *config, int link_get_driver(link_config_ctx *ctx, struct udev_device *device, char **ret) { const char *name; - char *driver; + char *driver = NULL; int r; name = udev_device_get_sysname(device);