Updated to freeipmi-1.1.2

This commit is contained in:
Jan Safranek 2012-02-08 08:39:50 +01:00
parent bd54804ae7
commit 57bdc75806
4 changed files with 46 additions and 86 deletions

1
.gitignore vendored
View File

@ -14,3 +14,4 @@ freeipmi-0.8.8.tar.gz
/freeipmi-1.0.9.tar.gz
/freeipmi-1.0.10.tar.gz
/freeipmi-1.1.1.tar.gz
/freeipmi-1.1.2.tar.gz

View File

@ -1,81 +0,0 @@
Fix daemon startup race.
Accepted upstream as SVN rev. 8299
diff -up freeipmi-1.1.1/bmc-watchdog/bmc-watchdog.c.systemd freeipmi-1.1.1/bmc-watchdog/bmc-watchdog.c
--- freeipmi-1.1.1/bmc-watchdog/bmc-watchdog.c.systemd 2012-01-02 20:26:09.000000000 +0100
+++ freeipmi-1.1.1/bmc-watchdog/bmc-watchdog.c 2012-01-06 16:28:55.966295836 +0100
@@ -1677,6 +1677,10 @@ _daemon_init ()
unsigned int i;
pid_t pid;
FILE *pidfile;
+ int fds[2];
+
+ if ( pipe(fds) < 0 )
+ _err_exit ("pipe: %s", strerror (errno));
if ( (pidfile = fopen(BMC_WATCHDOG_PIDFILE, "w")) == NULL )
_err_exit ("fopen: %s", strerror (errno));
@@ -1684,7 +1688,14 @@ _daemon_init ()
if ((pid = fork ()) < 0)
_err_exit ("fork: %s", strerror (errno));
if (pid)
- exit (0); /* parent terminates */
+ {
+ /* parent terminates */
+ char buf;
+ read(fds[0], &buf, 1);
+ close(fds[1]);
+ close(fds[0]);
+ exit (0);
+ }
setsid ();
@@ -1706,6 +1717,9 @@ _daemon_init ()
umask (0);
+ write(fds[1], "a", 1);
+ close(fds[1]);
+ close(fds[0]);
for (i = 0; i < 64; i++)
close (i);
}
diff -up freeipmi-1.1.1/ipmidetectd/ipmidetectd.c.systemd freeipmi-1.1.1/ipmidetectd/ipmidetectd.c
--- freeipmi-1.1.1/ipmidetectd/ipmidetectd.c.systemd 2012-01-02 20:26:13.000000000 +0100
+++ freeipmi-1.1.1/ipmidetectd/ipmidetectd.c 2012-01-06 16:28:09.309420665 +0100
@@ -58,12 +58,22 @@ _daemon_init (void)
/* Based on code in Unix network programming by R. Stevens */
pid_t pid;
unsigned int i;
+ int fds[2];
+ if (pipe(fds) < 0)
+ IPMIDETECTD_EXIT (("pipe: %s", strerror (errno)));
if ((pid = fork ()) < 0)
IPMIDETECTD_EXIT (("fork: %s", strerror (errno)));
- if (pid != 0) /* Terminate Parent */
- exit (0);
+ if (pid != 0)
+ {
+ /* Terminate Parent */
+ char buf;
+ read(fds[0], &buf, 1);
+ close(fds[1]);
+ close(fds[0]);
+ exit (0);
+ }
setsid ();
@@ -79,6 +89,9 @@ _daemon_init (void)
chdir ("/");
umask (0);
+ write(fds[1], "a", 1);
+ close(fds[1]);
+ close(fds[0]);
for (i = 0; i < 64; i++)
close (i);

View File

@ -2,10 +2,10 @@
# Copyright (c) 2003 FreeIPMI Core Team
#
Release: 2%{?dist}
Release: 1%{?dist}
Name: freeipmi
Version: 1.1.1
Version: 1.1.2
License: GPLv2+
Group: Applications/System
URL: http://www.gnu.org/software/freeipmi/
@ -17,7 +17,6 @@ BuildRequires: libgcrypt-devel texinfo systemd-units
Requires(preun): info systemd-units
Requires(post): info systemd-units systemd-sysv
Requires(postun): systemd-units
Patch1: freeipmi-systemd.patch
Summary: IPMI remote console and system management software
%description
@ -58,7 +57,6 @@ Provides a tool and a daemon for IPMI node detection.
%prep
%setup -q
%patch1 -p1 -b .systemd
%build
export CFLAGS="-D_GNU_SOURCE $RPM_OPT_FLAGS"
@ -361,6 +359,48 @@ fi
%{_unitdir}/ipmidetectd.service
%changelog
* Wed Feb 8 2012 Jan Safranek <jsafrane@redhat.com> - 1.1.2-1
- Updated to freeipmi-1.1.2:
- In ipmi-oem, support new Dell C410x OEM extensions
slot-power-toggle, slot-power-control, get-port-map, set-port-map.
- Fix daemon setup race condition in ipmidetectd and bmc-watchdog that
can affect systemd.
- In ipmiconsole, support new --serial-keepalive-empty option.
- In bmc-device, support new --rearm-sensor option.
- In ipmi-oem, add additional Dell get-system-info options
- slot-number
- system-revision
- embedded-video-status
- idrac-info
- idrac-ipv4-url
- idrac-gui-webserver-control
- cmc-ipv4-url,
- cmc-ipv6-info
- cmc-ipv6-url
- In ipmi-oem, support Dell 12G mac addresses under get-system-info.
- In ipmi-sensors, some sensors that reported "Unknown" may now report
"N/A" due to an interpretation change of several IPMI error codes.
- In ipmi-sensors, workaround sensor reading issue on Sun Blade x6250
and Sun Blade 6000M2.
- Fix several freeipmi.conf config file parsing bugs.
- In libipmiconsole, fix serial keepalive timeout calculation bug that
can lead to excessive packets retransmitted.
- In libipmiconsole, support new SERIAL_KEEPALIVE_EMPTY engine flag.
- In libipmiconsole, do not deactivate a SOL payload if it appears the
SOL payload has been stolen, but we did not receive a SOL deactivating
flag.
- In libipmiconsole, fix corner case in which session not closed
cleanly when DEACTIVATE_ONLY flag specified.
- In libipmiconsole, workaround bug in Dell Poweredge M605, M610, and
M915 where instance count of SOL is always returned as 0.
- In libfreeipmi, add functions for re-arm sensor events IPMI payload.
- In libfreeipmi/sensor-read, under some error conditions return error
of "unavailable" instead of "cannot be obtained" error code.
- In libfreeipmi/sensor-read, add workarounds to handle issues on Sun
Blade x6250 and Sun Blade 6000M2.
- Various documentation updates.
- Redo formattig of include/freeipmi/templates/ documents.
* Fri Jan 6 2012 Jan Safranek <jsafrane@redhat.com> - 1.1.1-2
- added systemd unit files (#767611)

View File

@ -1 +1 @@
2e69caa76be1bbe27215e42ab58ddbad freeipmi-1.1.1.tar.gz
0e87f02abf95f8114919a9d67d8d5caa freeipmi-1.1.2.tar.gz