diff options
author | tijl <tijl@FreeBSD.org> | 2016-03-24 18:14:11 +0800 |
---|---|---|
committer | tijl <tijl@FreeBSD.org> | 2016-03-24 18:14:11 +0800 |
commit | af04e8732655f813e9bedced3d06a50c5e3aed9d (patch) | |
tree | 7f8952c1a93ac67b01bffe613144b3e21ecc921a /net | |
parent | 3985f719e7e1f95e5749a11ee492803fbd639f22 (diff) | |
download | freebsd-ports-gnome-af04e8732655f813e9bedced3d06a50c5e3aed9d.tar.gz freebsd-ports-gnome-af04e8732655f813e9bedced3d06a50c5e3aed9d.tar.zst freebsd-ports-gnome-af04e8732655f813e9bedced3d06a50c5e3aed9d.zip |
Add net/corosync.
The Corosync Cluster Engine is a Group Communication System with additional
features for implementing high availability within applications. The project
provides four C Application Programming Interface features:
* A closed process group communication model with virtual synchrony
guarantees for creating replicated state machines.
* A simple availability manager that restarts the application process when it
has failed.
* A configuration and statistics in-memory database that provide the ability
to set, retrieve, and receive change notifications of information.
* A quorum system that notifies applications when quorum is achieved or
lost.
Corosync is used as a High Availability framework by projects such as Apache
Qpid and Pacemaker.
PR: 208182
Submitted by: David Shane Holden <dpejesh@yahoo.com>
Diffstat (limited to 'net')
-rw-r--r-- | net/Makefile | 1 | ||||
-rw-r--r-- | net/corosync/Makefile | 37 | ||||
-rw-r--r-- | net/corosync/distinfo | 2 | ||||
-rw-r--r-- | net/corosync/files/corosync-notifyd.in | 20 | ||||
-rw-r--r-- | net/corosync/files/corosync.in | 19 | ||||
-rw-r--r-- | net/corosync/files/patch-exec-votequorum.c | 11 | ||||
-rw-r--r-- | net/corosync/files/patch-test-cpghum.c | 11 | ||||
-rw-r--r-- | net/corosync/pkg-descr | 16 | ||||
-rw-r--r-- | net/corosync/pkg-plist | 253 |
9 files changed, 370 insertions, 0 deletions
diff --git a/net/Makefile b/net/Makefile index 7a16797993e2..e35759e3fdfb 100644 --- a/net/Makefile +++ b/net/Makefile @@ -75,6 +75,7 @@ SUBDIR += coda6_client SUBDIR += coda6_server SUBDIR += corkscrew + SUBDIR += corosync SUBDIR += courier-authlib-ldap SUBDIR += crtmpserver SUBDIR += cryptcat diff --git a/net/corosync/Makefile b/net/corosync/Makefile new file mode 100644 index 000000000000..7492a76f55a9 --- /dev/null +++ b/net/corosync/Makefile @@ -0,0 +1,37 @@ +# Created by: dpejesh@yahoo.com +# $FreeBSD$ + +PORTNAME= corosync +PORTVERSION= 2.3.5 +CATEGORIES= net +MASTER_SITES= http://build.clusterlabs.org/corosync/releases/ + +MAINTAINER= dpejesh@yahoo.com +COMMENT= Corosync Cluster Engine + +LICENSE= BSD3CLAUSE + +LIB_DEPENDS= libnss3.so:${PORTSDIR}/security/nss \ + libqb.so:${PORTSDIR}/devel/libqb + +USES= gmake libtool pathfix pkgconfig +USE_LDCONFIG= yes +USE_RC_SUBR= ${PORTNAME} ${PORTNAME}-notifyd +GNU_CONFIGURE= yes +INSTALL_TARGET= install-strip + +OPTIONS_DEFINE= DBUS SNMP +OPTIONS_SUB= yes + +DBUS_LIB_DEPENDS+= libdbus-1.so:${PORTSDIR}/devel/dbus +DBUS_CONFIGURE_ENABLE= dbus + +SNMP_LIB_DEPENDS+= libnetsnmp.so:${PORTSDIR}/net-mgmt/net-snmp +SNMP_CONFIGURE_ENABLE= snmp + +post-install: + ${RM} ${STAGEDIR}${PREFIX}/etc/init.d/corosync + ${RM} ${STAGEDIR}${PREFIX}/etc/init.d/corosync-notifyd + ${RMDIR} ${STAGEDIR}${PREFIX}/etc/init.d + +.include <bsd.port.mk> diff --git a/net/corosync/distinfo b/net/corosync/distinfo new file mode 100644 index 000000000000..8e872448a814 --- /dev/null +++ b/net/corosync/distinfo @@ -0,0 +1,2 @@ +SHA256 (corosync-2.3.5.tar.gz) = 1d48cdfa224b0ceb02e27fe9d56b738fb2a92262b04b15bb3a67e1c4248da8e2 +SIZE (corosync-2.3.5.tar.gz) = 1012915 diff --git a/net/corosync/files/corosync-notifyd.in b/net/corosync/files/corosync-notifyd.in new file mode 100644 index 000000000000..22b03ca33b11 --- /dev/null +++ b/net/corosync/files/corosync-notifyd.in @@ -0,0 +1,20 @@ +#!/bin/sh +# $FreeBSD$ + +# PROVIDE: corosync-notifyd +# REQUIRE: LOGIN FILESYSTEMS +# KEYWORD: shutdown + +. /etc/rc.subr + +name="corosync_notifyd" +rcvar="corosync_notifyd_enable" + +load_rc_config $name + +: ${corosync_notifyd_enable:=NO} + +command="%%PREFIX%%/sbin/corosync-notifyd" +command_args="-l" + +run_rc_command "$1" diff --git a/net/corosync/files/corosync.in b/net/corosync/files/corosync.in new file mode 100644 index 000000000000..6c0bc4b4ca89 --- /dev/null +++ b/net/corosync/files/corosync.in @@ -0,0 +1,19 @@ +#!/bin/sh +# $FreeBSD$ + +# PROVIDE: corosync +# REQUIRE: LOGIN FILESYSTEMS +# KEYWORD: shutdown + +. /etc/rc.subr + +name="corosync" +rcvar="corosync_enable" + +load_rc_config $name + +: ${corosync_enable:=NO} + +command="%%PREFIX%%/sbin/corosync" + +run_rc_command "$1" diff --git a/net/corosync/files/patch-exec-votequorum.c b/net/corosync/files/patch-exec-votequorum.c new file mode 100644 index 000000000000..9dfd2a90db1c --- /dev/null +++ b/net/corosync/files/patch-exec-votequorum.c @@ -0,0 +1,11 @@ +--- exec/votequorum.c.orig 2015-06-22 14:03:28 UTC ++++ exec/votequorum.c +@@ -893,7 +893,7 @@ static void update_ev_tracking_barrier(u + log_printf(LOGSYS_LEVEL_WARNING, + "Unable to update ev_tracking_barrier on disk data!!!"); + } +- fdatasync(ev_tracking_fd); ++ fsync(ev_tracking_fd); + + LEAVE(); + } diff --git a/net/corosync/files/patch-test-cpghum.c b/net/corosync/files/patch-test-cpghum.c new file mode 100644 index 000000000000..c7b6070c0003 --- /dev/null +++ b/net/corosync/files/patch-test-cpghum.c @@ -0,0 +1,11 @@ +--- test/cpghum.c.orig 2015-06-22 14:03:28 UTC ++++ test/cpghum.c +@@ -116,7 +116,7 @@ static void cpg_bm_deliver_fn ( + { + int *value = msg; + uLong crc=0; +- ulong recv_crc = value[1] & 0xFFFFFFFF; ++ uLong recv_crc = value[1] & 0xFFFFFFFF; + + packets_recvd++; + g_recv_length = msg_len; diff --git a/net/corosync/pkg-descr b/net/corosync/pkg-descr new file mode 100644 index 000000000000..fb42632850f8 --- /dev/null +++ b/net/corosync/pkg-descr @@ -0,0 +1,16 @@ +The Corosync Cluster Engine is a Group Communication System with additional +features for implementing high availability within applications. The project +provides four C Application Programming Interface features: + +* A closed process group communication model with virtual synchrony guarantees + for creating replicated state machines. +* A simple availability manager that restarts the application process when it + has failed. +* A configuration and statistics in-memory database that provide the ability + to set, retrieve, and receive change notifications of information. +* A quorum system that notifies applications when quorum is achieved or lost. + +Corosync is used as a High Availability framework by projects such as Apache +Qpid and Pacemaker. + +WWW: https://corosync.github.io/corosync/ diff --git a/net/corosync/pkg-plist b/net/corosync/pkg-plist new file mode 100644 index 000000000000..87b79867edc6 --- /dev/null +++ b/net/corosync/pkg-plist @@ -0,0 +1,253 @@ +bin/corosync-blackbox +%%ETCDIR%%/corosync.conf.example +%%ETCDIR%%/corosync.conf.example.udpu +etc/logrotate.d/corosync +include/corosync/cfg.h +include/corosync/cmap.h +include/corosync/corodefs.h +include/corosync/corotypes.h +include/corosync/cpg.h +include/corosync/hdb.h +include/corosync/quorum.h +include/corosync/sam.h +include/corosync/totem/totem.h +include/corosync/totem/totemip.h +include/corosync/totem/totempg.h +include/corosync/votequorum.h +lib/libcfg.a +lib/libcfg.so +lib/libcfg.so.6 +lib/libcfg.so.6.0.0 +lib/libcmap.a +lib/libcmap.so +lib/libcmap.so.4 +lib/libcmap.so.4.1.0 +lib/libcorosync_common.a +lib/libcorosync_common.so +lib/libcorosync_common.so.4 +lib/libcorosync_common.so.4.0.0 +lib/libcpg.a +lib/libcpg.so +lib/libcpg.so.4 +lib/libcpg.so.4.1.0 +lib/libquorum.a +lib/libquorum.so +lib/libquorum.so.5 +lib/libquorum.so.5.0.0 +lib/libsam.a +lib/libsam.so +lib/libsam.so.4 +lib/libsam.so.4.4.0 +lib/libtotem_pg.a +lib/libtotem_pg.so +lib/libtotem_pg.so.5 +lib/libtotem_pg.so.5.0.0 +lib/libvotequorum.a +lib/libvotequorum.so +lib/libvotequorum.so.7 +lib/libvotequorum.so.7.0.0 +libdata/pkgconfig/corosync.pc +libdata/pkgconfig/libcfg.pc +libdata/pkgconfig/libcmap.pc +libdata/pkgconfig/libcorosync_common.pc +libdata/pkgconfig/libcpg.pc +libdata/pkgconfig/libquorum.pc +libdata/pkgconfig/libsam.pc +libdata/pkgconfig/libtotem_pg.pc +libdata/pkgconfig/libvotequorum.pc +man/man3/cmap_context_get.3.gz +man/man3/cmap_context_set.3.gz +man/man3/cmap_dec.3.gz +man/man3/cmap_delete.3.gz +man/man3/cmap_dispatch.3.gz +man/man3/cmap_fd_get.3.gz +man/man3/cmap_finalize.3.gz +man/man3/cmap_get.3.gz +man/man3/cmap_inc.3.gz +man/man3/cmap_initialize.3.gz +man/man3/cmap_iter_finalize.3.gz +man/man3/cmap_iter_init.3.gz +man/man3/cmap_iter_next.3.gz +man/man3/cmap_set.3.gz +man/man3/cmap_track_add.3.gz +man/man3/cmap_track_delete.3.gz +man/man3/cpg_context_get.3.gz +man/man3/cpg_context_set.3.gz +man/man3/cpg_dispatch.3.gz +man/man3/cpg_fd_get.3.gz +man/man3/cpg_finalize.3.gz +man/man3/cpg_initialize.3.gz +man/man3/cpg_iteration_finalize.3.gz +man/man3/cpg_iteration_initialize.3.gz +man/man3/cpg_iteration_next.3.gz +man/man3/cpg_join.3.gz +man/man3/cpg_leave.3.gz +man/man3/cpg_local_get.3.gz +man/man3/cpg_mcast_joined.3.gz +man/man3/cpg_membership_get.3.gz +man/man3/cpg_model_initialize.3.gz +man/man3/cpg_zcb_alloc.3.gz +man/man3/cpg_zcb_free.3.gz +man/man3/cpg_zcb_mcast_joined.3.gz +man/man3/quorum_context_get.3.gz +man/man3/quorum_context_set.3.gz +man/man3/quorum_dispatch.3.gz +man/man3/quorum_fd_get.3.gz +man/man3/quorum_finalize.3.gz +man/man3/quorum_getquorate.3.gz +man/man3/quorum_initialize.3.gz +man/man3/quorum_trackstart.3.gz +man/man3/quorum_trackstop.3.gz +man/man3/sam_data_getsize.3.gz +man/man3/sam_data_restore.3.gz +man/man3/sam_data_store.3.gz +man/man3/sam_finalize.3.gz +man/man3/sam_hc_callback_register.3.gz +man/man3/sam_hc_send.3.gz +man/man3/sam_initialize.3.gz +man/man3/sam_mark_failed.3.gz +man/man3/sam_register.3.gz +man/man3/sam_start.3.gz +man/man3/sam_stop.3.gz +man/man3/sam_warn_signal_set.3.gz +man/man3/votequorum_context_get.3.gz +man/man3/votequorum_context_set.3.gz +man/man3/votequorum_dispatch.3.gz +man/man3/votequorum_fd_get.3.gz +man/man3/votequorum_finalize.3.gz +man/man3/votequorum_getinfo.3.gz +man/man3/votequorum_initialize.3.gz +man/man3/votequorum_qdevice_master_wins.3.gz +man/man3/votequorum_qdevice_poll.3.gz +man/man3/votequorum_qdevice_register.3.gz +man/man3/votequorum_qdevice_unregister.3.gz +man/man3/votequorum_qdevice_update.3.gz +man/man3/votequorum_setexpected.3.gz +man/man3/votequorum_setvotes.3.gz +man/man3/votequorum_trackstart.3.gz +man/man3/votequorum_trackstop.3.gz +man/man5/corosync.conf.5.gz +man/man5/votequorum.5.gz +man/man8/cmap_keys.8.gz +man/man8/cmap_overview.8.gz +man/man8/corosync-blackbox.8.gz +man/man8/corosync-cfgtool.8.gz +man/man8/corosync-cmapctl.8.gz +man/man8/corosync-cpgtool.8.gz +man/man8/corosync-keygen.8.gz +man/man8/corosync-notifyd.8.gz +man/man8/corosync-quorumtool.8.gz +man/man8/corosync.8.gz +man/man8/corosync_overview.8.gz +man/man8/cpg_overview.8.gz +man/man8/quorum_overview.8.gz +man/man8/sam_overview.8.gz +man/man8/votequorum_overview.8.gz +sbin/corosync +sbin/corosync-cfgtool +sbin/corosync-cmapctl +sbin/corosync-cpgtool +sbin/corosync-keygen +sbin/corosync-notifyd +sbin/corosync-quorumtool +%%SNMP%%share/snmp/mibs/COROSYNC-MIB.txt +%%PORTDOCS%%%%DOCSDIR%%/AUTHORS +%%PORTDOCS%%%%DOCSDIR%%/INSTALL +%%PORTDOCS%%%%DOCSDIR%%/LICENSE +%%PORTDOCS%%%%DOCSDIR%%/README.recovery +%%PORTDOCS%%%%DOCSDIR%%/SECURITY +%%PORTDOCS%%%%DOCSDIR%%/html/cmap_context_get.3.html +%%PORTDOCS%%%%DOCSDIR%%/html/cmap_context_set.3.html +%%PORTDOCS%%%%DOCSDIR%%/html/cmap_dec.3.html +%%PORTDOCS%%%%DOCSDIR%%/html/cmap_delete.3.html +%%PORTDOCS%%%%DOCSDIR%%/html/cmap_dispatch.3.html +%%PORTDOCS%%%%DOCSDIR%%/html/cmap_fd_get.3.html +%%PORTDOCS%%%%DOCSDIR%%/html/cmap_finalize.3.html +%%PORTDOCS%%%%DOCSDIR%%/html/cmap_get.3.html +%%PORTDOCS%%%%DOCSDIR%%/html/cmap_inc.3.html +%%PORTDOCS%%%%DOCSDIR%%/html/cmap_initialize.3.html +%%PORTDOCS%%%%DOCSDIR%%/html/cmap_iter_finalize.3.html +%%PORTDOCS%%%%DOCSDIR%%/html/cmap_iter_init.3.html +%%PORTDOCS%%%%DOCSDIR%%/html/cmap_iter_next.3.html +%%PORTDOCS%%%%DOCSDIR%%/html/cmap_keys.8.html +%%PORTDOCS%%%%DOCSDIR%%/html/cmap_overview.8.html +%%PORTDOCS%%%%DOCSDIR%%/html/cmap_set.3.html +%%PORTDOCS%%%%DOCSDIR%%/html/cmap_track_add.3.html +%%PORTDOCS%%%%DOCSDIR%%/html/cmap_track_delete.3.html +%%PORTDOCS%%%%DOCSDIR%%/html/corosync-blackbox.8.html +%%PORTDOCS%%%%DOCSDIR%%/html/corosync-cfgtool.8.html +%%PORTDOCS%%%%DOCSDIR%%/html/corosync-cmapctl.8.html +%%PORTDOCS%%%%DOCSDIR%%/html/corosync-cpgtool.8.html +%%PORTDOCS%%%%DOCSDIR%%/html/corosync-keygen.8.html +%%PORTDOCS%%%%DOCSDIR%%/html/corosync-notifyd.8.html +%%PORTDOCS%%%%DOCSDIR%%/html/corosync-quorumtool.8.html +%%PORTDOCS%%%%DOCSDIR%%/html/corosync.8.html +%%PORTDOCS%%%%DOCSDIR%%/html/corosync.conf.5.html +%%PORTDOCS%%%%DOCSDIR%%/html/corosync_overview.8.html +%%PORTDOCS%%%%DOCSDIR%%/html/cpg_context_get.3.html +%%PORTDOCS%%%%DOCSDIR%%/html/cpg_context_set.3.html +%%PORTDOCS%%%%DOCSDIR%%/html/cpg_dispatch.3.html +%%PORTDOCS%%%%DOCSDIR%%/html/cpg_fd_get.3.html +%%PORTDOCS%%%%DOCSDIR%%/html/cpg_finalize.3.html +%%PORTDOCS%%%%DOCSDIR%%/html/cpg_initialize.3.html +%%PORTDOCS%%%%DOCSDIR%%/html/cpg_iteration_finalize.3.html +%%PORTDOCS%%%%DOCSDIR%%/html/cpg_iteration_initialize.3.html +%%PORTDOCS%%%%DOCSDIR%%/html/cpg_iteration_next.3.html +%%PORTDOCS%%%%DOCSDIR%%/html/cpg_join.3.html +%%PORTDOCS%%%%DOCSDIR%%/html/cpg_leave.3.html +%%PORTDOCS%%%%DOCSDIR%%/html/cpg_local_get.3.html +%%PORTDOCS%%%%DOCSDIR%%/html/cpg_mcast_joined.3.html +%%PORTDOCS%%%%DOCSDIR%%/html/cpg_membership_get.3.html +%%PORTDOCS%%%%DOCSDIR%%/html/cpg_model_initialize.3.html +%%PORTDOCS%%%%DOCSDIR%%/html/cpg_overview.8.html +%%PORTDOCS%%%%DOCSDIR%%/html/cpg_zcb_alloc.3.html +%%PORTDOCS%%%%DOCSDIR%%/html/cpg_zcb_free.3.html +%%PORTDOCS%%%%DOCSDIR%%/html/cpg_zcb_mcast_joined.3.html +%%PORTDOCS%%%%DOCSDIR%%/html/index.html +%%PORTDOCS%%%%DOCSDIR%%/html/quorum_context_get.3.html +%%PORTDOCS%%%%DOCSDIR%%/html/quorum_context_set.3.html +%%PORTDOCS%%%%DOCSDIR%%/html/quorum_dispatch.3.html +%%PORTDOCS%%%%DOCSDIR%%/html/quorum_fd_get.3.html +%%PORTDOCS%%%%DOCSDIR%%/html/quorum_finalize.3.html +%%PORTDOCS%%%%DOCSDIR%%/html/quorum_getquorate.3.html +%%PORTDOCS%%%%DOCSDIR%%/html/quorum_initialize.3.html +%%PORTDOCS%%%%DOCSDIR%%/html/quorum_overview.8.html +%%PORTDOCS%%%%DOCSDIR%%/html/quorum_trackstart.3.html +%%PORTDOCS%%%%DOCSDIR%%/html/quorum_trackstop.3.html +%%PORTDOCS%%%%DOCSDIR%%/html/sam_data_getsize.3.html +%%PORTDOCS%%%%DOCSDIR%%/html/sam_data_restore.3.html +%%PORTDOCS%%%%DOCSDIR%%/html/sam_data_store.3.html +%%PORTDOCS%%%%DOCSDIR%%/html/sam_finalize.3.html +%%PORTDOCS%%%%DOCSDIR%%/html/sam_hc_callback_register.3.html +%%PORTDOCS%%%%DOCSDIR%%/html/sam_hc_send.3.html +%%PORTDOCS%%%%DOCSDIR%%/html/sam_initialize.3.html +%%PORTDOCS%%%%DOCSDIR%%/html/sam_mark_failed.3.html +%%PORTDOCS%%%%DOCSDIR%%/html/sam_overview.8.html +%%PORTDOCS%%%%DOCSDIR%%/html/sam_register.3.html +%%PORTDOCS%%%%DOCSDIR%%/html/sam_start.3.html +%%PORTDOCS%%%%DOCSDIR%%/html/sam_stop.3.html +%%PORTDOCS%%%%DOCSDIR%%/html/sam_warn_signal_set.3.html +%%PORTDOCS%%%%DOCSDIR%%/html/votequorum.5.html +%%PORTDOCS%%%%DOCSDIR%%/html/votequorum_context_get.3.html +%%PORTDOCS%%%%DOCSDIR%%/html/votequorum_context_set.3.html +%%PORTDOCS%%%%DOCSDIR%%/html/votequorum_dispatch.3.html +%%PORTDOCS%%%%DOCSDIR%%/html/votequorum_fd_get.3.html +%%PORTDOCS%%%%DOCSDIR%%/html/votequorum_finalize.3.html +%%PORTDOCS%%%%DOCSDIR%%/html/votequorum_getinfo.3.html +%%PORTDOCS%%%%DOCSDIR%%/html/votequorum_initialize.3.html +%%PORTDOCS%%%%DOCSDIR%%/html/votequorum_overview.8.html +%%PORTDOCS%%%%DOCSDIR%%/html/votequorum_qdevice_master_wins.3.html +%%PORTDOCS%%%%DOCSDIR%%/html/votequorum_qdevice_poll.3.html +%%PORTDOCS%%%%DOCSDIR%%/html/votequorum_qdevice_register.3.html +%%PORTDOCS%%%%DOCSDIR%%/html/votequorum_qdevice_unregister.3.html +%%PORTDOCS%%%%DOCSDIR%%/html/votequorum_qdevice_update.3.html +%%PORTDOCS%%%%DOCSDIR%%/html/votequorum_setexpected.3.html +%%PORTDOCS%%%%DOCSDIR%%/html/votequorum_setvotes.3.html +%%PORTDOCS%%%%DOCSDIR%%/html/votequorum_trackstart.3.html +%%PORTDOCS%%%%DOCSDIR%%/html/votequorum_trackstop.3.html +%%DBUS%%etc/dbus-1/system.d/corosync-signals.conf +@dir %%ETCDIR%%/service.d +@dir %%ETCDIR%%/uidgid.d +@dir /var/lib/corosync +@dir /var/lib +@dir /var/log/cluster |