}
return sizeof( tFloat64 );
---- openhpi-0.9.0/marshal/marshal_hpi_types.c~ Thu Jun 17 08:48:40 2004
-+++ openhpi-0.9.0/marshal/marshal_hpi_types.c Thu Jun 17 08:48:40 2004
-@@ -398,7 +398,8 @@
- b += s;
-
- // placeholder for number of entries
-- tUint32 *num = (tUint32 *)b;
-+ tUint32 num;
-+ memcpy(&num, b, sizeof(tUint32));
- b += sizeof( tUint32 );
- size += sizeof( tUint32 );
-
-@@ -444,7 +445,7 @@
- }
-
- // fill in the placeholder for the number of entries
-- if ( Marshal( &Uint32Type, &n, num ) < 0 )
-+ if ( Marshal( &Uint32Type, &n, &num ) < 0 )
- return -1;
-
- return size;
-@@ -508,7 +509,8 @@
- size += s;
- b += s;
-
-- tUint32 *len = (tUint32 *)b;
-+ tUint32 len;
-+ memcpy(&len, b, sizeof(tUint32));
- size += sizeof( tUint32 );
- b += sizeof( tUint32 );
-
-@@ -554,7 +556,7 @@
- if ( l < 0 )
- return -1;
-
-- if ( Marshal( &Uint32Type, &l, len ) < 0 )
-+ if ( Marshal( &Uint32Type, &l, &len ) < 0 )
- return -1;
-
- size += l;
-@@ -682,7 +682,7 @@
- size += s;
- b += s;
-
-- *tbp = (SaHpiTextBufferT *)data;
-+ *tbp = (SaHpiTextBufferT *)(void*)data;
-
- data += sizeof( SaHpiTextBufferT );
- *data_size += sizeof( SaHpiTextBufferT );
-@@ -853,7 +853,7 @@
- {
- tUint32 data_size;
-
-- id->DataRecords[i] = (SaHpiInventDataRecordT *)data_ptr;
-+ id->DataRecords[i] = (SaHpiInventDataRecordT *)(void*)data_ptr;
- s = SaHpiInventDataRecordDemarshaller( byte_order, id->DataRecords[i], b, &data_size );
-
- if ( s < 0 )
--- openhpi-1.0.0/plugins/ipmi/ipmi_controls.c.orig 2004-06-14 06:38:42.000000000 +0000
+++ openhpi-1.0.0/plugins/ipmi/ipmi_controls.c 2004-07-03 15:13:28.000000000 +0000
@@ -111,7 +111,7 @@
__set_control_state, info);
}
---- openhpi-1.0.0/plugins/snmp_rsa/snmp_rsa_inventory.c.orig 2004-04-05 20:59:44.000000000 +0000
-+++ openhpi-1.0.0/plugins/snmp_rsa/snmp_rsa_inventory.c 2004-07-31 08:07:00.000000000 +0000
-@@ -374,7 +374,7 @@
-
- l_data = data;
- l_data->Validity = SAHPI_INVENT_DATA_INVALID;
-- l_data->DataRecords[0] = (SaHpiInventDataRecordT *)l_data + sizeof(SaHpiInventoryDataT) +
-+ l_data->DataRecords[0] = (SaHpiInventDataRecordT *)(void*)l_data + sizeof(SaHpiInventoryDataT) +
- sizeof(l_data->DataRecords[0])+ sizeof(SaHpiInventDataRecordT);
- l_data->DataRecords[1] = NULL;
-
---- openhpi-1.0.0/plugins/snmp_rsa/t/snmp_rsa_inventory.c.orig 2004-04-05 20:59:44.000000000 +0000
-+++ openhpi-1.0.0/plugins/snmp_rsa/t/snmp_rsa_inventory.c 2004-07-31 07:37:06.000000000 +0000
-@@ -374,7 +374,7 @@
-
- l_data = data;
- l_data->Validity = SAHPI_INVENT_DATA_INVALID;
-- l_data->DataRecords[0] = (SaHpiInventDataRecordT *)l_data + sizeof(SaHpiInventoryDataT) +
-+ l_data->DataRecords[0] = (SaHpiInventDataRecordT *)(void*)l_data + sizeof(SaHpiInventoryDataT) +
- sizeof(l_data->DataRecords[0])+ sizeof(SaHpiInventDataRecordT);
- l_data->DataRecords[1] = NULL;
-
---- openhpi-1.0.0/plugins/snmp_bc/snmp_bc_inventory.c.orig 2004-06-21 14:37:30.000000000 +0000
-+++ openhpi-1.0.0/plugins/snmp_bc/snmp_bc_inventory.c 2004-07-31 08:26:11.000000000 +0000
-@@ -361,7 +361,7 @@
- struct oh_handler_state *handle = (struct oh_handler_state *)hnd;\r
- SaHpiRdrT *rdr = oh_get_rdr_by_type(handle->rptcache, id, SAHPI_INVENTORY_RDR, num);\r
- \r
-- l_data = (struct snmp_bc_inventory_data *) data;\r
-+ l_data = (struct snmp_bc_inventory_data *) (void*)data;\r
- l_data->Validity = SAHPI_INVENT_DATA_INVALID;\r
- \r
- /* Currently supporting only one data record */\r
---- openhpi-1.0.0/plugins/snmp_bc/t/snmp_bc_inventory.c.orig 2004-06-21 14:37:30.000000000 +0000
-+++ openhpi-1.0.0/plugins/snmp_bc/t/snmp_bc_inventory.c 2004-07-31 08:17:28.000000000 +0000
-@@ -361,7 +361,7 @@
- struct oh_handler_state *handle = (struct oh_handler_state *)hnd;\r
- SaHpiRdrT *rdr = oh_get_rdr_by_type(handle->rptcache, id, SAHPI_INVENTORY_RDR, num);\r
- \r
-- l_data = (struct snmp_bc_inventory_data *) data;\r
-+ l_data = (struct snmp_bc_inventory_data *) (void*)data;\r
- l_data->Validity = SAHPI_INVENT_DATA_INVALID;\r
- \r
- /* Currently supporting only one data record */\r
---- openhpi-0.7.0/plugins/snmp_client/snmp_client_get_rdrs.c.orig 2004-02-22 02:28:11.000000000 +0000
-+++ openhpi-0.7.0/plugins/snmp_client/snmp_client_get_rdrs.c 2004-02-22 03:10:15.000000000 +0000
-@@ -317,9 +317,8 @@
- if (vars->type == ASN_OCTET_STR) {
-
- /* local variables used by case statements */
-- int *data;
-+ int data; /* 32-bit */
- char *repeat;
-- int *stream_data;
- char *text_info;
- char *oem_data;
-
-@@ -339,18 +338,12 @@
- ntohl(sahpi_ctr_cap[i].CtrlRec.TypeUnion.Discrete.Default);
- break;
- case SAHPI_CTRL_TYPE_ANALOG:
-- data = (int *)(void *)vars->val.string;
-- sahpi_ctr_cap[i].CtrlRec.TypeUnion.Analog.Min = *data;
-- sahpi_ctr_cap[i].CtrlRec.TypeUnion.Analog.Min =
-- ntohl(sahpi_ctr_cap[i].CtrlRec.TypeUnion.Analog.Min);
-- data++;
-- sahpi_ctr_cap[i].CtrlRec.TypeUnion.Analog.Max = *data;
-- sahpi_ctr_cap[i].CtrlRec.TypeUnion.Analog.Max =
-- ntohl(sahpi_ctr_cap[i].CtrlRec.TypeUnion.Analog.Max);
-- data++;
-- sahpi_ctr_cap[i].CtrlRec.TypeUnion.Analog.Default = *data;
-- sahpi_ctr_cap[i].CtrlRec.TypeUnion.Analog.Default =
-- ntohl(sahpi_ctr_cap[i].CtrlRec.TypeUnion.Analog.Default);
-+ memcpy(&data, vars->val.string, sizeof(int));
-+ sahpi_ctr_cap[i].CtrlRec.TypeUnion.Analog.Min = ntohl(data);
-+ memcpy(&data, vars->val.string + sizeof(int), sizeof(int));
-+ sahpi_ctr_cap[i].CtrlRec.TypeUnion.Analog.Max = ntohl(data);
-+ memcpy(&data, vars->val.string + 2*sizeof(int), sizeof(int));
-+ sahpi_ctr_cap[i].CtrlRec.TypeUnion.Analog.Default = ntohl(data);
- break;
- case SAHPI_CTRL_TYPE_STREAM:
- /* set repeat */
-@@ -359,17 +352,16 @@
- repeat,
- sizeof(sahpi_ctr_cap[i].CtrlRec.TypeUnion.Stream.Default.Repeat));
- repeat++;
-- stream_data = (int *)(void *)repeat;
- /* set .StreamLength */
- memcpy(&sahpi_ctr_cap[i].CtrlRec.TypeUnion.Stream.Default.StreamLength,
-- stream_data,
-+ repeat,
- sizeof(sahpi_ctr_cap[i].CtrlRec.TypeUnion.Stream.Default.StreamLength));
- sahpi_ctr_cap[i].CtrlRec.TypeUnion.Stream.Default.StreamLength =
- ntohs(sahpi_ctr_cap[i].CtrlRec.TypeUnion.Stream.Default.StreamLength);
-- stream_data++;
-+ repeat += sizeof(int);
- /* set the .Stream data */
- memcpy(&sahpi_ctr_cap[i].CtrlRec.TypeUnion.Stream.Default.Stream,
-- stream_data,
-+ repeat,
- SAHPI_CTRL_MAX_STREAM_LENGTH);
- break;
- case SAHPI_CTRL_TYPE_TEXT:
---- openhpi-0.7.0/plugins/dummy/dummy.c.orig 2004-02-04 03:15:11.000000000 +0000
-+++ openhpi-0.7.0/plugins/dummy/dummy.c 2004-02-22 03:47:54.000000000 +0000
-@@ -1355,6 +1355,8 @@
- return(rval);
- }
-
-+#define align(x) (((x) + sizeof(long) - 1) & (-sizeof(long)))
-+
- static int dummy_get_inventory_info(void *hnd, SaHpiResourceIdT id,
- SaHpiEirIdT num,
- SaHpiInventoryDataT *data)
-@@ -1386,8 +1388,8 @@
-
- for (i=0,pos=0; inventory->DataRecords[i]!=NULL; i++) {
- /* FIXME:: very dirty hack to make code compile on IA64 */
-- data->DataRecords[i] = (SaHpiInventDataRecordT *)(void *)&inventory->data[pos];
-- pos+=inventory->DataRecords[i]->DataLength+8;
-+ data->DataRecords[i] = (SaHpiInventDataRecordT *)(void *)&inventory->data[pos];
-+ pos=align(pos + inventory->DataRecords[i]->DataLength+8);
- }
-
- }
-@@ -1427,9 +1429,9 @@
-
- for (i=0, pos=0; data->DataRecords[i] != NULL; i++) {
- /* FIXME:: very dirty hack to make code compile on IA64 */
-- inventory->DataRecords[i] = (SaHpiInventDataRecordT *)(void *)&inventory->data[pos];
-+ inventory->DataRecords[i] = (SaHpiInventDataRecordT *)(void *)&inventory->data[pos];
- memcpy(inventory->DataRecords[i], data->DataRecords[i], data->DataRecords[i]->DataLength+8);
-- pos+=data->DataRecords[i]->DataLength+8;
-+ pos=align(pos + data->DataRecords[i]->DataLength+8);
- }
- inventory->DataRecords[i] = NULL;
- }
--- openhpi-0.7.0/plugins/ipmidirect/ipmi.cpp.orig 2004-02-04 03:15:11.000000000 +0000
+++ openhpi-0.7.0/plugins/ipmidirect/ipmi.cpp 2004-02-22 13:36:05.000000000 +0000
@@ -908,7 +908,8 @@
Output( b );
}
---- openhpi-1.0.0/hpi_shell/hpi_cmd.c.orig 2004-06-28 22:06:50.000000000 +0000
-+++ openhpi-1.0.0/hpi_shell/hpi_cmd.c 2004-07-03 16:00:27.000000000 +0000
-@@ -456,7 +456,7 @@
- printf("Command> ");
-
- rv = pthread_create(&discover_thread, NULL, sahpi_discover_thread,
-- (void *)sessionid);
-+ (void *)(size_t)sessionid);
-
- if (rv)
- printf("Error creating event thread\n");
-@@ -528,7 +528,7 @@
- struct timeval to;
-
- while (thread == 1) {
-- rv = saHpiResourcesDiscover((SaHpiSessionIdT) sessionid);
-+ rv = saHpiResourcesDiscover((SaHpiSessionIdT)(size_t)sessionid);
- if (rv != SA_OK)
- printf("discovery failed\n");
-
---- openhpi-1.0.0/openhpid/event_get.c.orig 2004-04-05 07:52:32.000000000 +0000
-+++ openhpi-1.0.0/openhpid/event_get.c 2004-07-31 08:34:36.000000000 +0000
-@@ -54,7 +54,7 @@
- // 11:11:11
- strftime( b, 10, "%H:%M:%S", &tmt );
-
-- sprintf( b + 9 - 1, ".%03ld ", tv.tv_usec / 1000 );
-+ sprintf( b + 9 - 1, ".%03ld ", (long)(tv.tv_usec / 1000) );
-
- va_list ap;
- va_start( ap, fmt );
Summary: Service Availability Forum's Hardware Platform Interface (HPI) implementation
Summary(pl): Implementacja HPI (Hardware Platform Interface) Service Availability Forum
Name: openhpi
-Version: 1.0.0
+Version: 2.1.1
Release: 1
License: BSD
Group: Libraries
Source0: http://dl.sourceforge.net/openhpi/%{name}-%{version}.tar.gz
-# Source0-md5: 44b858cf202bfabcf7968b216c615b2b
+# Source0-md5: 885270b848b2364d5dce075c4f3c7a92
Patch0: %{name}-types.patch
-Patch1: %{name}-amfix.patch
-Patch2: %{name}-sh.patch
-Patch3: %{name}-glib.patch
-Patch4: %{name}-align.patch
-Patch5: %{name}-snmp.patch
+Patch1: %{name}-sh.patch
+Patch2: %{name}-align.patch
URL: http://openhpi.sourceforge.net/
-BuildRequires: OpenIPMI-devel >= 1.3.9
+BuildRequires: OpenIPMI-devel >= 1.4.13
BuildRequires: autoconf >= 2.57
BuildRequires: automake >= 1.5
BuildRequires: docbook-dtd41-sgml
BuildRequires: docbook-utils
BuildRequires: fam-devel
BuildRequires: gcc >= 5:3.2.0
-BuildRequires: glib2-devel >= 2.0.0
+BuildRequires: glib2-devel >= 1:2.2.0
BuildRequires: libltdl-devel
BuildRequires: libstdc++-devel
BuildRequires: libtool
BuildRequires: libuuid-devel
BuildRequires: net-snmp-devel
+BuildRequires: openssl-devel
BuildRequires: pkgconfig
BuildRequires: sysfsutils-devel >= 0.3.0
+Requires: glib2 >= 1:2.2.0
BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
%description
Summary(pl): Programistyczna czê¶æ biblioteki OpenHPI
Group: Development/Libraries
Requires: %{name} = %{version}-%{release}
-Requires: glib2-devel >= 2.0.0
+Requires: glib2-devel >= 1:2.2.0
Requires: libltdl-devel
%description devel
Summary(pl): Wtyczka ipmi dla OpenHPI
Group: Libraries
Requires: %{name} = %{version}-%{release}
+Requires: OpenIPMI >= 1.4.13
%description plugin-ipmi
ipmi plugin for OpenHPI.
Requires: %{name} = %{version}-%{release}
%description plugin-snmp
-SNMP plugins for OpenHPI: snmp_bc and snmp_client.
+SNMP plugins for OpenHPI: snmp_bc.
%description plugin-snmp -l pl
-Wtyczki SNMP dla OpenHPI: snmp_bc oraz snmp_client.
+Wtyczki SNMP dla OpenHPI: snmp_bc.
%package plugin-simulator
Summary: simulator plugin for OpenHPI
%patch0 -p1
%patch1 -p1
%patch2 -p1
-%patch3 -p1
-%patch4 -p1
-%patch5 -p1
# speed up build, lower disk space usage
for f in `find . -name Makefile.am | xargs grep -l 'AM_CFLAGS.* -g '`; do
%{__autoheader}
%{__automake}
%configure \
- --with-glib=2.0.0
+ --enable-daemon \
+ --enable-simulator
+# removed?
+# --enable-remote_client
%{__make}
%{__make} install \
DESTDIR=$RPM_BUILD_ROOT
+ln -s %{name}/standard/libopenhpi.so.2.1.0 $RPM_BUILD_ROOT%{_libdir}
+ln -s %{name}/standard/libopenhpi.so $RPM_BUILD_ROOT%{_libdir}
+ln -s %{name}/standard/libopenhpi.la $RPM_BUILD_ROOT%{_libdir}
+ln -s %{name}/standard/libopenhpi.a $RPM_BUILD_ROOT%{_libdir}
+
# remove useless static plugins (but *.la are used by lt_dlopen)
rm -f $RPM_BUILD_ROOT%{_libdir}/%{name}/*.a
%files
%defattr(644,root,root,755)
-%doc COPYING ChangeLog README docs/hld/openhpi-manual
+%doc COPYING README docs/hld/openhpi-manual
%attr(755,root,root) %{_bindir}/*
-%attr(755,root,root) %{_libdir}/lib*.so.*.*
+%attr(755,root,root) %{_libdir}/lib*.so.*.*.*
%dir %{_libdir}/%{name}
-%attr(755,root,root) %{_libdir}/%{name}/libdummy.so*
+%attr(755,root,root) %{_libdir}/%{name}/libdummy.so
%{_libdir}/%{name}/libdummy.la
%attr(755,root,root) %{_libdir}/%{name}/libwatchdog.so*
%{_libdir}/%{name}/libwatchdog.la
-%attr(755,root,root) %{_libdir}/%{name}/libremote_client.so*
-%{_libdir}/%{name}/libremote_client.la
+%dir %{_libdir}/%{name}/client
+%attr(755,root,root) %{_libdir}/%{name}/client/libopenhpi.so.*
+%dir %{_libdir}/%{name}/standard
+%attr(755,root,root) %{_libdir}/%{name}/standard/libopenhpi.so.*
+#%attr(755,root,root) %{_libdir}/%{name}/libremote_client.so*
+#%{_libdir}/%{name}/libremote_client.la
%dir %{_sysconfdir}/openhpi
-%config(noreplace) %verify(not size mtime md5) %{_sysconfdir}/openhpi/openhpi.conf
+%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/openhpi/openhpi.conf
+#%attr(754,root,root) /etc/rc.d/init.d/openhpid
+%dir %{_localstatedir}/lib/%{name}
+%{_mandir}/man1/openhpi-switcher.1*
+%{_mandir}/man7/openhpi.7*
%files devel
%defattr(644,root,root,755)
%attr(755,root,root) %{_libdir}/lib*.so
-%{_libdir}/*.la
+%{_libdir}/lib*.la
+%attr(755,root,root) %{_libdir}/%{name}/client/libopenhpi.so
+%{_libdir}/%{name}/client/libopenhpi.la
+%attr(755,root,root) %{_libdir}/%{name}/standard/libopenhpi.so
+%{_libdir}/%{name}/standard/libopenhpi.la
%{_includedir}/%{name}
+%{_includedir}/hpi_cmd.h
%{_pkgconfigdir}/*.pc
%files static
%defattr(644,root,root,755)
%{_libdir}/lib*.a
+%{_libdir}/%{name}/client/libopenhpi.a
+%{_libdir}/%{name}/standard/libopenhpi.a
%files plugin-ipmi
%defattr(644,root,root,755)
%defattr(644,root,root,755)
%attr(755,root,root) %{_libdir}/%{name}/libsnmp_bc.so*
%{_libdir}/%{name}/libsnmp_bc.la
-%attr(755,root,root) %{_libdir}/%{name}/libsnmp_client.so*
-%{_libdir}/%{name}/libsnmp_client.la
-%attr(755,root,root) %{_libdir}/%{name}/libsnmp_rsa.so*
-%{_libdir}/%{name}/libsnmp_rsa.la
%files plugin-sysfs
%defattr(644,root,root,755)