[systemd-commits] 3 commits - man/systemd.special.xml src/journal src/libsystemd-network

Zbigniew Jędrzejewski-Szmek zbyszek at kemper.freedesktop.org
Thu Jun 19 06:10:18 PDT 2014


 man/systemd.special.xml                  |    2 -
 src/journal/journal-send.c               |   37 +++++++++++--------------------
 src/libsystemd-network/sd-dhcp6-client.c |   14 +++++------
 3 files changed, 22 insertions(+), 31 deletions(-)

New commits:
commit c806ffb9592fa9a2b13a1f9f9be4c77cd5b211aa
Author: Zbigniew Jędrzejewski-Szmek <zbyszek at in.waw.pl>
Date:   Thu Jun 19 09:08:37 2014 -0400

    sd-dhcp6-client: Initialize fd to -1 and rename function
    
    client_initialize name is misleading, since the function is actually
    useful at the *end*, to reinitialize the object. But reset is shorter,
    so rename it to client_reset.

diff --git a/src/libsystemd-network/sd-dhcp6-client.c b/src/libsystemd-network/sd-dhcp6-client.c
index 01d9ec4..ef5fb44 100644
--- a/src/libsystemd-network/sd-dhcp6-client.c
+++ b/src/libsystemd-network/sd-dhcp6-client.c
@@ -153,15 +153,13 @@ static sd_dhcp6_client *client_notify(sd_dhcp6_client *client, int event) {
         return client;
 }
 
-static int client_initialize(sd_dhcp6_client *client)
-{
+static int client_reset(sd_dhcp6_client *client) {
         assert_return(client, -EINVAL);
 
         client->receive_message =
                 sd_event_source_unref(client->receive_message);
 
-        if (client->fd > 0)
-                client->fd = safe_close(client->fd);
+        client->fd = safe_close(client->fd);
 
         client->transaction_id = 0;
 
@@ -186,7 +184,7 @@ static sd_dhcp6_client *client_stop(sd_dhcp6_client *client, int error) {
 
         client = client_notify(client, error);
         if (client)
-                client_initialize(client);
+                client_reset(client);
 
         return client;
 }
@@ -873,7 +871,7 @@ int sd_dhcp6_client_start(sd_dhcp6_client *client)
         assert_return(client->event, -EINVAL);
         assert_return(client->index > 0, -EINVAL);
 
-        r = client_initialize(client);
+        r = client_reset(client);
         if (r < 0)
                 return r;
 
@@ -925,7 +923,7 @@ sd_dhcp6_client *sd_dhcp6_client_ref(sd_dhcp6_client *client) {
 
 sd_dhcp6_client *sd_dhcp6_client_unref(sd_dhcp6_client *client) {
         if (client && REFCNT_DEC(client->n_ref) <= 0) {
-                client_initialize(client);
+                client_reset(client);
 
                 sd_dhcp6_client_detach_event(client);
 
@@ -958,6 +956,8 @@ int sd_dhcp6_client_new(sd_dhcp6_client **ret)
 
         client->index = -1;
 
+        client->fd = -1;
+
         /* initialize DUID */
         client->duid.type = htobe16(DHCP6_DUID_EN);
         client->duid.pen = htobe32(SYSTEMD_PEN);

commit 08d555f347f154d08520a117b9769975cf302e38
Author: Ronny Chevalier <chevalier.ronny at gmail.com>
Date:   Thu Jun 19 10:43:03 2014 +0200

    man: fix typo

diff --git a/man/systemd.special.xml b/man/systemd.special.xml
index f29cc23..2ff64c9 100644
--- a/man/systemd.special.xml
+++ b/man/systemd.special.xml
@@ -1137,7 +1137,7 @@
                         <varlistentry>
                                 <term><filename>machine.slice</filename></term>
                                 <listitem>
-                                        <para>By defalt, all virtual
+                                        <para>By default, all virtual
                                         machines and containers
                                         registered with
                                         <command>systemd-machined</command>

commit 61c024b328d5493a334242a4d01ba923582093fa
Author: Zbigniew Jędrzejewski-Szmek <zbyszek at in.waw.pl>
Date:   Wed Jun 18 17:56:03 2014 -0400

    journal-send.c: use automatic cleanup

diff --git a/src/journal/journal-send.c b/src/journal/journal-send.c
index d92e84b..bb1ef66 100644
--- a/src/journal/journal-send.c
+++ b/src/journal/journal-send.c
@@ -198,7 +198,8 @@ finish:
 
 _public_ int sd_journal_sendv(const struct iovec *iov, int n) {
         PROTECT_ERRNO;
-        int fd, buffer_fd;
+        int fd;
+        _cleanup_close_ int buffer_fd = -1;
         struct iovec *w;
         uint64_t *l;
         int i, j = 0;
@@ -315,10 +316,8 @@ _public_ int sd_journal_sendv(const struct iovec *iov, int n) {
                 return buffer_fd;
 
         n = writev(buffer_fd, w, j);
-        if (n < 0) {
-                safe_close(buffer_fd);
+        if (n < 0)
                 return -errno;
-        }
 
         mh.msg_iov = NULL;
         mh.msg_iovlen = 0;
@@ -336,8 +335,6 @@ _public_ int sd_journal_sendv(const struct iovec *iov, int n) {
         mh.msg_controllen = cmsg->cmsg_len;
 
         k = sendmsg(fd, &mh, MSG_NOSIGNAL);
-        safe_close(buffer_fd);
-
         if (k < 0)
                 return -errno;
 
@@ -398,10 +395,10 @@ _public_ int sd_journal_stream_fd(const char *identifier, int priority, int leve
                 .un.sun_family = AF_UNIX,
                 .un.sun_path = "/run/systemd/journal/stdout",
         };
-        int fd;
+        _cleanup_close_ int fd = -1;
         char *header;
         size_t l;
-        ssize_t r;
+        int r;
 
         assert_return(priority >= 0, -EINVAL);
         assert_return(priority <= 7, -EINVAL);
@@ -411,15 +408,11 @@ _public_ int sd_journal_stream_fd(const char *identifier, int priority, int leve
                 return -errno;
 
         r = connect(fd, &sa.sa, offsetof(union sockaddr_union, un.sun_path) + strlen(sa.un.sun_path));
-        if (r < 0) {
-                safe_close(fd);
+        if (r < 0)
                 return -errno;
-        }
 
-        if (shutdown(fd, SHUT_RD) < 0) {
-                safe_close(fd);
+        if (shutdown(fd, SHUT_RD) < 0)
                 return -errno;
-        }
 
         fd_inc_sndbuf(fd, SNDBUF_SIZE);
 
@@ -443,18 +436,16 @@ _public_ int sd_journal_stream_fd(const char *identifier, int priority, int leve
         header[l++] = '0';
         header[l++] = '\n';
 
-        r = loop_write(fd, header, l, false);
-        if (r < 0) {
-                safe_close(fd);
-                return (int) r;
-        }
+        r = (int) loop_write(fd, header, l, false);
+        if (r < 0)
+                return r;
 
-        if ((size_t) r != l) {
-                safe_close(fd);
+        if ((size_t) r != l)
                 return -errno;
-        }
 
-        return fd;
+        r = fd;
+        fd = -1;
+        return r;
 }
 
 _public_ int sd_journal_print_with_location(int priority, const char *file, const char *line, const char *func, const char *format, ...) {



More information about the systemd-commits mailing list