We removed the following functions:
hashmap_merge
path_is_read_only_fs
set_free_free
set_free_freep
readlink_malloc
hexchar
unhexchar
octchar
unoctchar
format_timespan
Signed-off-by: Anthony G. Basile <blueness@gentoo.org>
We remove the following unused functions:
label_socket_set
label_socket_clear
label_free
label_get_create_label_from_exe
label_retest_selinux
label_bind
mkdir_label
mkdir_safe
mkdir_safe_label
mkdir_p_label
Signed-off-by: Anthony G. Basile <blueness@gentoo.org>
A lot of upstream commits cross many boundaries between systemd code
and udev code. The point of intersection is upstreams src/shared
folder. The best way we find to track them is to apply their commits
to udev and libudev and then just pick remove functions from the
shared folder. Its timely but it gives us the best control over what
gets in and what doesnt.
In this commit we removed the following functions:
conf_files_list_nulstr
exit_status_to_string
is_clean_exit_lsb
uint64_hash_func
uint64_compare_func
hashmap_free_free_free
hashmap_update
hashmap_get2
hashmap_remove_and_replace
hashmap_remove_value
hashmap_steal_first_key
hashmap_next
log_forget_fds
log_set_facility
log_meta_object
log_struct_internal
log_set_target_from_string
log_set_max_level_from_string
log_get_target
log_get_max_level
log_show_color_from_string
log_show_location_from_string
log_on_console
is_path
path_split_and_make_absolute
set_ensure_allocated
set_replace
set_remove_and_put
set_size
set_isempty
set_iterate_skip
set_steal_first
set_first
set_last
set_merge
set_move_one
set_copy
set_clear_free
set_get_strv
strv_find_prefix
strv_merge_concat
strv_split_newlines
strv_join
strv_remove_prefix
strv_parse_nulstr
strv_overlap
strv_sort
strv_print
Signed-off-by: Anthony G. Basile <blueness@gentoo.org>
In doing so, we better alined util.{c,h} by movig the definitions
of freep, fclosep, closep, closedirp, umaskp from util.c to util.h
as static inline. We also add strv_env_get to env-util.{c,h} which
we forgot to do earlier.
Signed-off-by: Anthony G. Basile <blueness@gentoo.org>
To bring this in line with upstream, we had to add in env-util.c.
The approach we will take is to slim down upstream's "shared" code
so that it only contains functions and macros for what we need.
Signed-off-by: Anthony G. Basile <blueness@gentoo.org>
gcc (and other compilers) sometimes generate spurious warnings, and
thus users of public headers must be able to disable warnings.
Printf format attributes can be disabled by setting
#define _sd_printf_attr_
before including the header file.
Also, add similar logic for sentinel attribute:
#define _sd_sentinel_attr_
before including the header file disables the attribute.
It's polite to print the name of the link that wasn't created,
and it makes little sense to print the target.
Signed-off-by: Anthony G. Basile <blueness@gentoo.org>
b8a2b0f76 'use initalization instead of explicit zeroing'
introduced a bug where only the first sizeof(uint_t*) bytes
would be zeroed out, instead of the whole array.
Avoid "sender uid=65534, message ignored" case, where no credentials can
be read on the sender side.
Seems, the server socket does not enable credential receiving fast
enough, and the message from the client (without credential) sometimes
is queued before the credential passing was active.
Signed-off-by: Anthony G. Basile <blueness@gentoo.org>
Before, we would initialize many fields twice: first
by filling the structure with zeros, and then a second
time with the real values. We can let the compiler do
the job for us, avoiding one copy.
A downside of this patch is that text gets slightly
bigger. This is because all zero() calls are effectively
inlined:
$ size build/.libs/systemd
text data bss dec hex filename
before 897737 107300 2560 1007597 f5fed build/.libs/systemd
after 897873 107300 2560 1007733 f6075 build/.libs/systemd
… actually less than 1‰.
A few asserts that the parameter is not null had to be removed. I
don't think this changes much, because first, it is quite unlikely
for the assert to fail, and second, an immediate SEGV is almost as
good as an assert.
NOTE by Basile: the above analysis is for all systemd. This commit
is just a sliver of the commit for all of system and so we can't
expect size to be the same.
Signed-off-by: Anthony G. Basile <blueness@gentoo.org>
For some reason this shows up on i686 only:
src/udev/udev-builtin-usb_id.c:192:20: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
This corrects a previously applied commit for upstream's
acd42fae59096d84e78f1c17bfcc0d8f96486341
Signed-off-by: Anthony G. Basile <blueness@gentoo.org>