burp - experience and 2.1 version

classic Classic list List threaded Threaded
14 messages Options
Reply | Threaded
Open this post in threaded view
|

burp - experience and 2.1 version

Jiri B-2
Hi guys,

landry@ added burp[1] into ports and while searching for
something easier that bacula/bareos for disk-based backups,
I found burp and read 'Migrating from Bacula to Burp'[2].

What are you experiences with burp?

Are you staying with ports version (2.0.54) because it was said
to be (old) stable which should not change?[3]

I pretty like how easy it is and that I can get data directly from
users backup dir in /var/spool/burp/$client after decompressing it.

(I made a port for 2.1.128 and my quick testing while reading docs
is OK. What about having "statically" built burp so one could
restore while being in ramdisk env?)

I'm in process to decide for a backup solution, so I'm a big ear ;)

Jiri

[1] http://burp.grke.org/index.html
[2] http://www.kudos.be/Articles/Migrating_from_Bacula_to_Burp.html
[3]https://github.com/grke/burp/issues/626

Reply | Threaded
Open this post in threaded view
|

Re: burp - experience and 2.1 version

Landry Breuil-5
On Tue, Feb 20, 2018 at 12:22:33PM -0500, Jiri B wrote:
> Hi guys,
>
> landry@ added burp[1] into ports and while searching for
> something easier that bacula/bareos for disk-based backups,
> I found burp and read 'Migrating from Bacula to Burp'[2].
>
> What are you experiences with burp?

I needed it just for the client (im backuping a bunch of openbsd vms,
the server is on a freenas jail)

> Are you staying with ports version (2.0.54) because it was said
> to be (old) stable which should not change?[3]

The 2.1 branch was only declared stable recently, and this discussion
already happened in https://marc.info/?t=151817944300002&r=1&w=2

Landry

Reply | Threaded
Open this post in threaded view
|

Re: burp - experience and 2.1 version

Jiri B-2
On Thu, Feb 22, 2018 at 08:20:15AM +0100, Landry Breuil wrote:
> The 2.1 branch was only declared stable recently, and this discussion
> already happened in https://marc.info/?t=151817944300002&r=1&w=2
>
> Landry

I'll send my diff for update the port because of this issue:
https://github.com/grke/burp/issues/691

Is it worth to make it as "static" binary?

I finished my burp/WinPE quick test and I'm thinking to have
burp either on ramdisk or downloadable via NFS and using it
inside ramdisk env for disaster recovery.

Jiri

Reply | Threaded
Open this post in threaded view
|

Re: burp - experience and 2.1 version

Landry Breuil-5
On Thu, Feb 22, 2018 at 04:07:37AM -0500, Jiri B wrote:

> On Thu, Feb 22, 2018 at 08:20:15AM +0100, Landry Breuil wrote:
> > The 2.1 branch was only declared stable recently, and this discussion
> > already happened in https://marc.info/?t=151817944300002&r=1&w=2
> >
> > Landry
>
> I'll send my diff for update the port because of this issue:
> https://github.com/grke/burp/issues/691
>
> Is it worth to make it as "static" binary?

You can try making it a flavor, but given that burp uses a bunch of
external scripts and *wants* a config file, you'll need more than just
the binary to run it from single user.

As for the update itself, i have no opinion. You decided to use 2.1 on
your clients, you assume the choice...

Landry

Reply | Threaded
Open this post in threaded view
|

Re: burp - experience and 2.1 version

Jiri B-2
On Thu, Feb 22, 2018 at 10:21:54AM +0100, Landry Breuil wrote:
> As for the update itself, i have no opinion. You decided to use 2.1 on
> your clients, you assume the choice...

Do you want to keep old stable? Should I create new 'branch'
for 2.1.x or just update current port?

Jiri

Reply | Threaded
Open this post in threaded view
|

Re: burp - experience and 2.1 version

Stuart Henderson
On 2018/02/22 04:59, Jiri B wrote:
> On Thu, Feb 22, 2018 at 10:21:54AM +0100, Landry Breuil wrote:
> > As for the update itself, i have no opinion. You decided to use 2.1 on
> > your clients, you assume the choice...
>
> Do you want to keep old stable? Should I create new 'branch'
> for 2.1.x or just update current port?

Since a client may be stuck with an old server that is difficult to get
updated, carrying multiple branches might be useful. And since this is
unlikely to be a build dep of other ports, there should be no requirement
to avoid a conflict between the two.

Reply | Threaded
Open this post in threaded view
|

Re: burp - experience and 2.1 version

Jiri B-2
On Thu, Feb 22, 2018 at 12:05:00PM +0000, Stuart Henderson wrote:

> On 2018/02/22 04:59, Jiri B wrote:
> > On Thu, Feb 22, 2018 at 10:21:54AM +0100, Landry Breuil wrote:
> > > As for the update itself, i have no opinion. You decided to use 2.1 on
> > > your clients, you assume the choice...
> >
> > Do you want to keep old stable? Should I create new 'branch'
> > for 2.1.x or just update current port?
>
> Since a client may be stuck with an old server that is difficult to get
> updated, carrying multiple branches might be useful. And since this is
> unlikely to be a build dep of other ports, there should be no requirement
> to avoid a conflict between the two.

I have no idea how to solve this - no conflict, thus one could have
old server and would like to install new client or vice-versa.
What to do with configuration files? I have no opinion.

Anyway, here's my current diff.

- I did not touch old port, just move it and made branches
- 2.1.28 does not need some old patches and it uses autoconf/automake
  now


(I'm still learning, so please apologize my mistakes.)

Jiri

diff --git sysutils/burp/2.0/Makefile sysutils/burp/2.0/Makefile
new file mode 100644
index 00000000000..329384ba03f
--- /dev/null
+++ sysutils/burp/2.0/Makefile
@@ -0,0 +1,13 @@
+# $OpenBSD: Makefile,v 1.3 2018/02/09 10:41:45 nigel Exp $
+
+GH_TAGNAME = 2.0.54
+REVISION = 1
+
+post-patch:
+ ${SUBST_CMD} ${WRKSRC}/src/client/monitor/status_client_ncurses.c
+
+post-install:
+ @rm -Rf ${WRKINST}/${SYSCONFDIR}/burp/autoupgrade
+ @mv ${WRKINST}/${SYSCONFDIR}/burp ${PREFIX}/share/examples/burp
+
+.include <bsd.port.mk>
diff --git sysutils/burp/2.0/distinfo sysutils/burp/2.0/distinfo
new file mode 100644
index 00000000000..8261a2d01ba
--- /dev/null
+++ sysutils/burp/2.0/distinfo
@@ -0,0 +1,2 @@
+SHA256 (burp-2.0.54.tar.bz2) = rhBHBYbx/uRVbqrls8UreM/A6sQQn0uCU8VJ5/8ADYY=
+SIZE (burp-2.0.54.tar.bz2) = 754566
diff --git sysutils/burp/2.0/patches/patch-Makefile_in sysutils/burp/2.0/patches/patch-Makefile_in
new file mode 100644
index 00000000000..045e0419c45
--- /dev/null
+++ sysutils/burp/2.0/patches/patch-Makefile_in
@@ -0,0 +1,14 @@
+$OpenBSD: patch-Makefile_in,v 1.1.1.1 2017/11/03 11:31:01 landry Exp $
+
+Index: Makefile.in
+--- Makefile.in.orig
++++ Makefile.in
+@@ -625,7 +625,7 @@ sbindir = @sbindir@
+ scriptdir = @scriptdir@
+ sharedstatedir = @sharedstatedir@
+ srcdir = @srcdir@
+-sysconfdir = @sysconfdir@
++sysconfdir = @sysconfdir@/burp
+ target_alias = @target_alias@
+ top_build_prefix = @top_build_prefix@
+ top_builddir = @top_builddir@
diff --git sysutils/burp/2.0/patches/patch-configs_client_burp_conf_in sysutils/burp/2.0/patches/patch-configs_client_burp_conf_in
new file mode 100644
index 00000000000..4b0fe24292f
--- /dev/null
+++ sysutils/burp/2.0/patches/patch-configs_client_burp_conf_in
@@ -0,0 +1,14 @@
+$OpenBSD: patch-configs_client_burp_conf_in,v 1.1.1.1 2017/11/03 11:31:01 landry Exp $
+
+Index: configs/client/burp.conf.in
+--- configs/client/burp.conf.in.orig
++++ configs/client/burp.conf.in
+@@ -11,7 +11,7 @@ cname = testclient
+ # with a pseudo mirrored storage on the server and optional rsync). 2 forces
+ # protocol2 mode (inline deduplication with variable length blocks).
+ # protocol = 0
+-pidfile = @runstatedir@/burp.client.pid
++pidfile = @runstatedir@/burp/client.pid
+ syslog = 0
+ stdout = 1
+ progress_counter = 1
diff --git sysutils/burp/2.0/patches/patch-configs_server_burp_conf_in sysutils/burp/2.0/patches/patch-configs_server_burp_conf_in
new file mode 100644
index 00000000000..e40588384a1
--- /dev/null
+++ sysutils/burp/2.0/patches/patch-configs_server_burp_conf_in
@@ -0,0 +1,26 @@
+$OpenBSD: patch-configs_server_burp_conf_in,v 1.1.1.1 2017/11/03 11:31:01 landry Exp $
+
+Index: configs/server/burp.conf.in
+--- configs/server/burp.conf.in.orig
++++ configs/server/burp.conf.in
+@@ -22,7 +22,7 @@ clientconfdir = @sysconfdir@/clientconfdir
+ # Like many other settings, this can be set per client in the clientconfdir
+ # files.
+ # protocol = 0
+-pidfile = @runstatedir@/burp.server.pid
++pidfile = @runstatedir@/burp/server.pid
+ hardlinked_archive = 0
+ working_dir_recovery_method = delete
+ max_children = 5
+@@ -68,8 +68,9 @@ keep = 7
+ # keep = 6
+
+ # Run as different user/group.
+-# user=graham
+-# group=nogroup
++user=_burp
++group=_burp
++dedup_group=_burp
+
+ # CA options.
+ # If you want your server to be a certificate authority and generate its own
diff --git sysutils/burp/2.0/patches/patch-configs_server_timer_script sysutils/burp/2.0/patches/patch-configs_server_timer_script
new file mode 100644
index 00000000000..1b1d569ea9f
--- /dev/null
+++ sysutils/burp/2.0/patches/patch-configs_server_timer_script
@@ -0,0 +1,42 @@
+$OpenBSD: patch-configs_server_timer_script,v 1.1.1.1 2017/11/03 11:31:01 landry Exp $
+
+https://github.com/grke/burp/issues/627
+
+Index: configs/server/timer_script
+--- configs/server/timer_script.orig
++++ configs/server/timer_script
+@@ -77,29 +77,12 @@ get_intervals()
+
+ read junk ts < "$timestamp"
+
+- if   ! secs=$(LANG=C LC_TIME=C date +%s -d "$ts") \
+-  || ! now=$(LANG=C LC_TIME=C date +"%Y-%m-%d %H:%M:%S") \
+-  || ! nowsecs=$(LANG=C LC_TIME=C date +%s -d "$now")
+- then
+- echo "$0: Date command returned error for $client."
+- return 0
+- fi
+-
++ mts=$(echo $ts | sed -e 's/-//g; s/ //; s/://; s/:/./')
++ secs=$(LANG=C LC_TIME=C date -j "$mts" +%s)
++ now=$(LANG=C LC_TIME=C date +"%Y-%m-%d %H:%M:%S")
++ nowsecs=$(LANG=C LC_TIME=C date +%s)
+ min_timesecs=$((secs+intervalsecs))
+-
+- # GNU coreutils 'date' command should accept the following (even
+- # slightly old versions).
+- if ! min_time=$(LANG=C LC_TIME=C date -d "Jan 1, 1970 00:00:00 +0000 + $min_timesecs seconds" +"%Y-%m-%d %H:%M:%S")
+- then
+- # FreeBSD 'date' will return an error with the above, so try
+- # a version that FreeBSD 'date' should be happy with.
+- if ! min_time=$(LANG=C LC_TIME=C date -r $min_timesecs +"%Y-%m-%d %H:%M:%S")
+- then
+- echo "$0: Date command returned error for $client."
+- return 0
+- fi
+- fi
+-
++ min_time=$(LANG=C LC_TIME=C date -r $min_timesecs +"%Y-%m-%d %H:%M:%S")
+ echo "Last backup: $ts"
+ echo "Next after : $min_time (interval $interval)"
+
diff --git sysutils/burp/2.0/patches/patch-src_client_monitor_status_client_ncurses_c sysutils/burp/2.0/patches/patch-src_client_monitor_status_client_ncurses_c
new file mode 100644
index 00000000000..d23ac878275
--- /dev/null
+++ sysutils/burp/2.0/patches/patch-src_client_monitor_status_client_ncurses_c
@@ -0,0 +1,23 @@
+$OpenBSD: patch-src_client_monitor_status_client_ncurses_c,v 1.1.1.1 2017/11/03 11:31:01 landry Exp $
+
+https://github.com/grke/burp/issues/626
+
+Index: src/client/monitor/status_client_ncurses.c
+--- src/client/monitor/status_client_ncurses.c.orig
++++ src/client/monitor/status_client_ncurses.c
+@@ -1453,14 +1453,7 @@ static pid_t fork_monitor(int *csin, int *csout, struc
+ char procpath[32];
+ char buf[PATH_MAX];
+
+- snprintf(procpath, sizeof(procpath), "/proc/%d/exe", getpid());
+- if(!readlink_w(procpath, buf, sizeof(buf)))
+- args[a++]=(char *)buf;
+- else if(is_reg_lstat(prog_long)>0)
+- args[a++]=(char *)prog_long;
+- else
+- args[a++]=(char *)"/usr/sbin/burp";
+-
++ args[a++]=(char *)"${TRUEPREFIX}/sbin/burp";
+ args[a++]=(char *)"-c";
+ args[a++]=get_string(confs[OPT_CONFFILE]);
+ args[a++]=(char *)"-a";
diff --git sysutils/burp/2.0/pkg/DESCR sysutils/burp/2.0/pkg/DESCR
new file mode 100644
index 00000000000..01a51148382
--- /dev/null
+++ sysutils/burp/2.0/pkg/DESCR
@@ -0,0 +1,4 @@
+Burp is a network backup and restore program. It attempts to reduce
+network traffic and the amount of space that is used by each backup,
+and uses VSS (Volume Shadow Copy Service) to make snapshots when
+backing up Windows computers.
diff --git sysutils/burp/2.0/pkg/PLIST sysutils/burp/2.0/pkg/PLIST
new file mode 100644
index 00000000000..767d2faa6e1
--- /dev/null
+++ sysutils/burp/2.0/pkg/PLIST
@@ -0,0 +1,70 @@
+@comment $OpenBSD: PLIST,v 1.1.1.1 2017/11/03 11:31:01 landry Exp $
+@newgroup _burp:794
+@newuser _burp:794:794:daemon:BackUp and Recovery Daemon:/var/empty:/sbin/nologin
+@bin bin/vss_strip
+@man man/man8/bedup.8
+@man man/man8/bsigs.8
+@man man/man8/burp.8
+@man man/man8/burp_ca.8
+@man man/man8/vss_strip.8
+sbin/bedup
+sbin/bsigs
+@bin sbin/burp
+sbin/burp_ca
+share/burp/
+share/burp/scripts/
+share/burp/scripts/notify_script
+share/burp/scripts/ssl_extra_checks_script
+share/burp/scripts/summary_script
+share/burp/scripts/timer_script
+share/doc/burp/
+share/doc/burp/CHANGELOG
+share/doc/burp/CONTRIBUTORS
+share/doc/burp/DONATIONS
+share/doc/burp/LICENSE
+share/doc/burp/README
+share/doc/burp/UPGRADING
+share/doc/burp/add-remove.txt
+share/doc/burp/autoupgrade.txt
+share/doc/burp/backup_phases.txt
+share/doc/burp/baremetal-windows2008.txt
+share/doc/burp/baremetal-windows7-hirens.txt
+share/doc/burp/baremetal-windows7.txt
+share/doc/burp/baremetal-windows7and8.txt
+share/doc/burp/burp_ca.txt
+share/doc/burp/debug.txt
+share/doc/burp/readwrite.txt
+share/doc/burp/retention.txt
+share/doc/burp/security-models.txt
+share/doc/burp/server-basics.txt
+share/doc/burp/shuffling.txt
+share/doc/burp/status-monitor.txt
+share/doc/burp/tests.txt
+share/doc/burp/timer_script.txt
+share/doc/burp/working_dir.txt
+@mode 770
+@owner _burp
+@group _burp
+share/examples/burp/
+@sample ${SYSCONFDIR}/burp/
+share/examples/burp/CA-client/
+@sample ${SYSCONFDIR}/burp/CA-client/
+share/examples/burp/CA.cnf
+@sample ${SYSCONFDIR}/burp/CA.cnf
+share/examples/burp/burp-server.conf
+@sample ${SYSCONFDIR}/burp/burp-server.conf
+share/examples/burp/burp.conf
+@sample ${SYSCONFDIR}/burp/burp.conf
+share/examples/burp/clientconfdir/
+@sample ${SYSCONFDIR}/burp/clientconfdir/
+share/examples/burp/clientconfdir/incexc/
+@sample ${SYSCONFDIR}/burp/clientconfdir/incexc/
+share/examples/burp/clientconfdir/incexc/example
+@sample ${SYSCONFDIR}/burp/clientconfdir/incexc/example
+share/examples/burp/clientconfdir/testclient
+@sample ${SYSCONFDIR}/burp/clientconfdir/testclient
+@sample /var/spool/burp/
+@mode
+@owner
+@group
+@rcscript ${RCDIR}/burp
diff --git sysutils/burp/2.0/pkg/burp.rc sysutils/burp/2.0/pkg/burp.rc
new file mode 100644
index 00000000000..98d0505c4ac
--- /dev/null
+++ sysutils/burp/2.0/pkg/burp.rc
@@ -0,0 +1,15 @@
+#!/bin/ksh
+#
+# $OpenBSD: burp.rc,v 1.3 2018/01/11 19:27:10 rpe Exp $
+
+daemon="${TRUEPREFIX}/sbin/burp"
+daemon_flags="-c ${SYSCONFDIR}/burp/burp-server.conf"
+
+. /etc/rc.d/rc.subr
+
+rc_pre() {
+ chown _burp ${SYSCONFDIR}/burp/ssl_cert_ca.pem
+ install -d -o _burp -g _burp /var/run/burp
+}
+
+rc_cmd $1
diff --git sysutils/burp/Makefile sysutils/burp/Makefile
new file mode 100644
index 00000000000..c96c48b7e2a
--- /dev/null
+++ sysutils/burp/Makefile
@@ -0,0 +1,7 @@
+# $OpenBSD$
+
+    SUBDIR =
+    SUBDIR += 2.0
+    SUBDIR += stable
+
+.include <bsd.port.subdir.mk>
diff --git sysutils/burp/Makefile.inc sysutils/burp/Makefile.inc
new file mode 100644
index 00000000000..b3ac328619b
--- /dev/null
+++ sysutils/burp/Makefile.inc
@@ -0,0 +1,24 @@
+# $OpenBSD$
+
+COMMENT = BackUp and Restore Program
+DISTNAME = burp-${GH_TAGNAME}
+
+GH_ACCOUNT = grke
+GH_PROJECT = burk
+CATEGORIES = sysutils
+HOMEPAGE = http://burp.grke.org/
+
+# AGPLv3
+PERMIT_PACKAGE_CDROM = Yes
+
+CONFIGURE_STYLE = gnu
+INSTALL_TARGET = install-all
+
+# check is used for tests but detected at configure time
+BUILD_DEPENDS = devel/uthash \
+ devel/check
+LIB_DEPENDS = net/librsync
+RUN_DEPENDS = shells/bash
+WANTLIB += b2 c crypto m curses rsync ssl z
+
+SUBST_VARS += TRUEPREFIX
diff --git sysutils/burp/stable/Makefile sysutils/burp/stable/Makefile
new file mode 100644
index 00000000000..2cede2c53c1
--- /dev/null
+++ sysutils/burp/stable/Makefile
@@ -0,0 +1,26 @@
+# $OpenBSD$
+
+GH_TAGNAME = 2.1.28
+
+AUTOCONF_VERSION =      2.69
+AUTOMAKE_VERSION =      1.11
+
+BUILD_DEPENDS =         ${MODGNU_AUTOCONF_DEPENDS} \
+                        ${MODGNU_AUTOMAKE_DEPENDS}
+
+pre-configure:
+ cd ${WRKSRC} && env ${MAKE_ENV} \
+ AUTOCONF_VERSION=${AUTOCONF_VERSION} \
+ AUTOMAKE_VERSION=${AUTOMAKE_VERSION} \
+ autoreconf -vif
+
+post-install:
+ @rm -Rf ${WRKINST}/${SYSCONFDIR}/burp/autoupgrade
+ @mv ${WRKINST}/${SYSCONFDIR}/burp ${PREFIX}/share/examples/burp
+ @perl -pi -e 's,%%LOCALBASE%%,${LOCALBASE},' \
+ ${PREFIX}/share/examples/burp/burp.conf
+
+.include <bsd.port.mk>
+CONFIGURE_ARGS = --sysconfdir="${SYSCONFDIR}/burp" \
+ --mandir="${PREFIX}/man" \
+ --localstatedir="${LOCALSTATEDIR}"
diff --git sysutils/burp/stable/distinfo sysutils/burp/stable/distinfo
new file mode 100644
index 00000000000..a722842c957
--- /dev/null
+++ sysutils/burp/stable/distinfo
@@ -0,0 +1,2 @@
+SHA256 (burp-2.1.28.tar.gz) = pD+ziapoD8XU98U+dBFVGyKKrh02LbRAowQk2Oc1kUM=
+SIZE (burp-2.1.28.tar.gz) = 590482
diff --git sysutils/burp/stable/patches/patch-configs_client_burp_conf_in sysutils/burp/stable/patches/patch-configs_client_burp_conf_in
new file mode 100644
index 00000000000..9bf29f50442
--- /dev/null
+++ sysutils/burp/stable/patches/patch-configs_client_burp_conf_in
@@ -0,0 +1,15 @@
+$OpenBSD$
+
+Index: configs/client/burp.conf.in
+--- configs/client/burp.conf.in.orig
++++ configs/client/burp.conf.in
+@@ -13,7 +13,8 @@ cname = testclient
+ # with a pseudo mirrored storage on the server and optional rsync). 2 forces
+ # protocol2 mode (inline deduplication with variable length blocks).
+ # protocol = 0
+-pidfile = @runstatedir@/@name@.client.pid
++pidfile = @runstatedir@/burp/@name@.client.pid
++monitor_exe = %%LOCALBASE%%/sbin/burp
+ syslog = 0
+ stdout = 1
+ progress_counter = 1
diff --git sysutils/burp/stable/patches/patch-configs_server_burp_conf_in sysutils/burp/stable/patches/patch-configs_server_burp_conf_in
new file mode 100644
index 00000000000..e9c7fc439a1
--- /dev/null
+++ sysutils/burp/stable/patches/patch-configs_server_burp_conf_in
@@ -0,0 +1,34 @@
+$OpenBSD$
+
+Index: configs/server/burp.conf.in
+--- configs/server/burp.conf.in.orig
++++ configs/server/burp.conf.in
+@@ -23,7 +23,7 @@ max_status_children = 5
+ # max_status_children = 6
+
+ directory = @localstatedir@/spool/@name@
+-dedup_group = global
++dedup_group = _burp
+ clientconfdir = @sysconfdir@/clientconfdir
+ # Choose the protocol to use.
+ # 0 to decide automatically, 1 to force protocol1 mode (file level granularity
+@@ -32,7 +32,7 @@ clientconfdir = @sysconfdir@/clientconfdir
+ # Like many other settings, this can be set per client in the clientconfdir
+ # files.
+ # protocol = 0
+-pidfile = @runstatedir@/@name@.server.pid
++pidfile = @runstatedir@/burp/@name@.server.pid
+ hardlinked_archive = 0
+ working_dir_recovery_method = delete
+ umask = 0022
+@@ -76,8 +76,8 @@ keep = 7
+ # keep = 6
+
+ # Run as different user/group.
+-# user=graham
+-# group=nogroup
++user=_burp
++group=_burp
+
+ # CA options.
+ # If you want your server to be a certificate authority and generate its own
diff --git sysutils/burp/stable/pkg/DESCR sysutils/burp/stable/pkg/DESCR
new file mode 100644
index 00000000000..01a51148382
--- /dev/null
+++ sysutils/burp/stable/pkg/DESCR
@@ -0,0 +1,4 @@
+Burp is a network backup and restore program. It attempts to reduce
+network traffic and the amount of space that is used by each backup,
+and uses VSS (Volume Shadow Copy Service) to make snapshots when
+backing up Windows computers.
diff --git sysutils/burp/stable/pkg/PLIST sysutils/burp/stable/pkg/PLIST
new file mode 100644
index 00000000000..31fedd9eb09
--- /dev/null
+++ sysutils/burp/stable/pkg/PLIST
@@ -0,0 +1,72 @@
+@comment $OpenBSD: PLIST,v 1.1.1.1 2017/11/03 11:31:01 landry Exp $
+@newgroup _burp:794
+@newuser _burp:794:794:daemon:BackUp and Recovery Daemon:/var/empty:/sbin/nologin
+@bin bin/vss_strip
+@man man/man8/bedup.8
+@man man/man8/bsigs.8
+@man man/man8/bsparse.8
+@man man/man8/burp.8
+@man man/man8/burp_ca.8
+@man man/man8/vss_strip.8
+sbin/bedup
+sbin/bsigs
+sbin/bsparse
+@bin sbin/burp
+sbin/burp_ca
+share/burp/
+share/burp/scripts/
+share/burp/scripts/notify_script
+share/burp/scripts/ssl_extra_checks_script
+share/burp/scripts/summary_script
+share/burp/scripts/timer_script
+share/doc/burp/
+share/doc/burp/CHANGELOG
+share/doc/burp/CONTRIBUTORS
+share/doc/burp/DONATIONS
+share/doc/burp/LICENSE
+share/doc/burp/README
+share/doc/burp/UPGRADING
+share/doc/burp/add-remove.txt
+share/doc/burp/autoupgrade.txt
+share/doc/burp/backup_phases.txt
+share/doc/burp/baremetal-windows2008.txt
+share/doc/burp/baremetal-windows7-hirens.txt
+share/doc/burp/baremetal-windows7.txt
+share/doc/burp/baremetal-windows7and8.txt
+share/doc/burp/burp_ca.txt
+share/doc/burp/debug.txt
+share/doc/burp/readwrite.txt
+share/doc/burp/retention.txt
+share/doc/burp/security-models.txt
+share/doc/burp/server-basics.txt
+share/doc/burp/shuffling.txt
+share/doc/burp/status-monitor.txt
+share/doc/burp/tests.txt
+share/doc/burp/timer_script.txt
+share/doc/burp/working_dir.txt
+@mode 770
+@owner _burp
+@group _burp
+share/examples/burp/
+@sample ${SYSCONFDIR}/burp/
+share/examples/burp/CA-client/
+@sample ${SYSCONFDIR}/burp/CA-client/
+share/examples/burp/CA.cnf
+@sample ${SYSCONFDIR}/burp/CA.cnf
+share/examples/burp/burp-server.conf
+@sample ${SYSCONFDIR}/burp/burp-server.conf
+share/examples/burp/burp.conf
+@sample ${SYSCONFDIR}/burp/burp.conf
+share/examples/burp/clientconfdir/
+@sample ${SYSCONFDIR}/burp/clientconfdir/
+share/examples/burp/clientconfdir/incexc/
+@sample ${SYSCONFDIR}/burp/clientconfdir/incexc/
+share/examples/burp/clientconfdir/incexc/example
+@sample ${SYSCONFDIR}/burp/clientconfdir/incexc/example
+share/examples/burp/clientconfdir/testclient
+@sample ${SYSCONFDIR}/burp/clientconfdir/testclient
+@sample /var/spool/burp/
+@mode
+@owner
+@group
+@rcscript ${RCDIR}/burp
diff --git sysutils/burp/stable/pkg/burp.rc sysutils/burp/stable/pkg/burp.rc
new file mode 100644
index 00000000000..98d0505c4ac
--- /dev/null
+++ sysutils/burp/stable/pkg/burp.rc
@@ -0,0 +1,15 @@
+#!/bin/ksh
+#
+# $OpenBSD: burp.rc,v 1.3 2018/01/11 19:27:10 rpe Exp $
+
+daemon="${TRUEPREFIX}/sbin/burp"
+daemon_flags="-c ${SYSCONFDIR}/burp/burp-server.conf"
+
+. /etc/rc.d/rc.subr
+
+rc_pre() {
+ chown _burp ${SYSCONFDIR}/burp/ssl_cert_ca.pem
+ install -d -o _burp -g _burp /var/run/burp
+}
+
+rc_cmd $1

Reply | Threaded
Open this post in threaded view
|

Re: burp - experience and 2.1 version

Jiri B-2
On Thu, Feb 22, 2018 at 08:08:02PM -0500, Jiri B wrote:

> On Thu, Feb 22, 2018 at 12:05:00PM +0000, Stuart Henderson wrote:
> > On 2018/02/22 04:59, Jiri B wrote:
> > > On Thu, Feb 22, 2018 at 10:21:54AM +0100, Landry Breuil wrote:
> > > > As for the update itself, i have no opinion. You decided to use 2.1 on
> > > > your clients, you assume the choice...
> > >
> > > Do you want to keep old stable? Should I create new 'branch'
> > > for 2.1.x or just update current port?
> >
> > Since a client may be stuck with an old server that is difficult to get
> > updated, carrying multiple branches might be useful. And since this is
> > unlikely to be a build dep of other ports, there should be no requirement
> > to avoid a conflict between the two.
>
> I have no idea how to solve this - no conflict, thus one could have
> old server and would like to install new client or vice-versa.
> What to do with configuration files? I have no opinion.
>
> Anyway, here's my current diff.
>
> - I did not touch old port, just move it and made branches
> - 2.1.28 does not need some old patches and it uses autoconf/automake
>   now
>
>
> (I'm still learning, so please apologize my mistakes.)

Too many mistakes, please ignore it, I'll send new one later.

Jiri

Reply | Threaded
Open this post in threaded view
|

UPDATE: burp -> 2.0/2.0.54, stable (2.1.28)

Jiri B-2
In reply to this post by Jiri B-2
On Thu, Feb 22, 2018 at 08:08:02PM -0500, Jiri B wrote:
> I have no idea how to solve this - no conflict, thus one could have
> old server and would like to install new client or vice-versa.
> What to do with configuration files? I have no opinion.

Hi,

I hope I finally was successful to make diff for burp.

- moving current port version into '2.0' subdir
- adding 'stable' subdir for 2.1.28
- customizing Makefile and adding Makefile.inc
- making both ports 'conflict' and have '@option is-branch'

IIUC, both ports can be installed with something like:

  env PKG_DBDIR=<var_db_pkg_alternative> pkg_add -B <new_root> <package>

- I would love to know how to build -static flavor so I could use burp
  for disaster recovery from ramdisk env.
- If there would be pledge restrictions, it would be great too...

Question: I could not do 'make fetch' in 'stable' subdir, it was
showing error that distinfo does not exist, no idea what's going on?!

Jiri


diff --git Makefile Makefile
new file mode 100644
index 00000000000..ceb51612cbf
--- /dev/null
+++ Makefile
@@ -0,0 +1,13 @@
+# $OpenBSD: Makefile,v 1.3 2018/02/09 10:41:45 nigel Exp $
+
+VERSION = 2.0.54
+REVISION = 1
+
+post-patch:
+ ${SUBST_CMD} ${WRKSRC}/src/client/monitor/status_client_ncurses.c
+
+post-install:
+ @rm -Rf ${WRKINST}/${SYSCONFDIR}/burp/autoupgrade
+ @mv ${WRKINST}/${SYSCONFDIR}/burp ${PREFIX}/share/examples/burp
+
+.include <bsd.port.mk>
diff --git distinfo distinfo
new file mode 100644
index 00000000000..8261a2d01ba
--- /dev/null
+++ distinfo
@@ -0,0 +1,2 @@
+SHA256 (burp-2.0.54.tar.bz2) = rhBHBYbx/uRVbqrls8UreM/A6sQQn0uCU8VJ5/8ADYY=
+SIZE (burp-2.0.54.tar.bz2) = 754566
diff --git patches/patch-Makefile_in patches/patch-Makefile_in
new file mode 100644
index 00000000000..045e0419c45
--- /dev/null
+++ patches/patch-Makefile_in
@@ -0,0 +1,14 @@
+$OpenBSD: patch-Makefile_in,v 1.1.1.1 2017/11/03 11:31:01 landry Exp $
+
+Index: Makefile.in
+--- Makefile.in.orig
++++ Makefile.in
+@@ -625,7 +625,7 @@ sbindir = @sbindir@
+ scriptdir = @scriptdir@
+ sharedstatedir = @sharedstatedir@
+ srcdir = @srcdir@
+-sysconfdir = @sysconfdir@
++sysconfdir = @sysconfdir@/burp
+ target_alias = @target_alias@
+ top_build_prefix = @top_build_prefix@
+ top_builddir = @top_builddir@
diff --git patches/patch-configs_client_burp_conf_in patches/patch-configs_client_burp_conf_in
new file mode 100644
index 00000000000..4b0fe24292f
--- /dev/null
+++ patches/patch-configs_client_burp_conf_in
@@ -0,0 +1,14 @@
+$OpenBSD: patch-configs_client_burp_conf_in,v 1.1.1.1 2017/11/03 11:31:01 landry Exp $
+
+Index: configs/client/burp.conf.in
+--- configs/client/burp.conf.in.orig
++++ configs/client/burp.conf.in
+@@ -11,7 +11,7 @@ cname = testclient
+ # with a pseudo mirrored storage on the server and optional rsync). 2 forces
+ # protocol2 mode (inline deduplication with variable length blocks).
+ # protocol = 0
+-pidfile = @runstatedir@/burp.client.pid
++pidfile = @runstatedir@/burp/client.pid
+ syslog = 0
+ stdout = 1
+ progress_counter = 1
diff --git patches/patch-configs_server_burp_conf_in patches/patch-configs_server_burp_conf_in
new file mode 100644
index 00000000000..e40588384a1
--- /dev/null
+++ patches/patch-configs_server_burp_conf_in
@@ -0,0 +1,26 @@
+$OpenBSD: patch-configs_server_burp_conf_in,v 1.1.1.1 2017/11/03 11:31:01 landry Exp $
+
+Index: configs/server/burp.conf.in
+--- configs/server/burp.conf.in.orig
++++ configs/server/burp.conf.in
+@@ -22,7 +22,7 @@ clientconfdir = @sysconfdir@/clientconfdir
+ # Like many other settings, this can be set per client in the clientconfdir
+ # files.
+ # protocol = 0
+-pidfile = @runstatedir@/burp.server.pid
++pidfile = @runstatedir@/burp/server.pid
+ hardlinked_archive = 0
+ working_dir_recovery_method = delete
+ max_children = 5
+@@ -68,8 +68,9 @@ keep = 7
+ # keep = 6
+
+ # Run as different user/group.
+-# user=graham
+-# group=nogroup
++user=_burp
++group=_burp
++dedup_group=_burp
+
+ # CA options.
+ # If you want your server to be a certificate authority and generate its own
diff --git patches/patch-configs_server_timer_script patches/patch-configs_server_timer_script
new file mode 100644
index 00000000000..1b1d569ea9f
--- /dev/null
+++ patches/patch-configs_server_timer_script
@@ -0,0 +1,42 @@
+$OpenBSD: patch-configs_server_timer_script,v 1.1.1.1 2017/11/03 11:31:01 landry Exp $
+
+https://github.com/grke/burp/issues/627
+
+Index: configs/server/timer_script
+--- configs/server/timer_script.orig
++++ configs/server/timer_script
+@@ -77,29 +77,12 @@ get_intervals()
+
+ read junk ts < "$timestamp"
+
+- if   ! secs=$(LANG=C LC_TIME=C date +%s -d "$ts") \
+-  || ! now=$(LANG=C LC_TIME=C date +"%Y-%m-%d %H:%M:%S") \
+-  || ! nowsecs=$(LANG=C LC_TIME=C date +%s -d "$now")
+- then
+- echo "$0: Date command returned error for $client."
+- return 0
+- fi
+-
++ mts=$(echo $ts | sed -e 's/-//g; s/ //; s/://; s/:/./')
++ secs=$(LANG=C LC_TIME=C date -j "$mts" +%s)
++ now=$(LANG=C LC_TIME=C date +"%Y-%m-%d %H:%M:%S")
++ nowsecs=$(LANG=C LC_TIME=C date +%s)
+ min_timesecs=$((secs+intervalsecs))
+-
+- # GNU coreutils 'date' command should accept the following (even
+- # slightly old versions).
+- if ! min_time=$(LANG=C LC_TIME=C date -d "Jan 1, 1970 00:00:00 +0000 + $min_timesecs seconds" +"%Y-%m-%d %H:%M:%S")
+- then
+- # FreeBSD 'date' will return an error with the above, so try
+- # a version that FreeBSD 'date' should be happy with.
+- if ! min_time=$(LANG=C LC_TIME=C date -r $min_timesecs +"%Y-%m-%d %H:%M:%S")
+- then
+- echo "$0: Date command returned error for $client."
+- return 0
+- fi
+- fi
+-
++ min_time=$(LANG=C LC_TIME=C date -r $min_timesecs +"%Y-%m-%d %H:%M:%S")
+ echo "Last backup: $ts"
+ echo "Next after : $min_time (interval $interval)"
+
diff --git patches/patch-src_client_monitor_status_client_ncurses_c patches/patch-src_client_monitor_status_client_ncurses_c
new file mode 100644
index 00000000000..d23ac878275
--- /dev/null
+++ patches/patch-src_client_monitor_status_client_ncurses_c
@@ -0,0 +1,23 @@
+$OpenBSD: patch-src_client_monitor_status_client_ncurses_c,v 1.1.1.1 2017/11/03 11:31:01 landry Exp $
+
+https://github.com/grke/burp/issues/626
+
+Index: src/client/monitor/status_client_ncurses.c
+--- src/client/monitor/status_client_ncurses.c.orig
++++ src/client/monitor/status_client_ncurses.c
+@@ -1453,14 +1453,7 @@ static pid_t fork_monitor(int *csin, int *csout, struc
+ char procpath[32];
+ char buf[PATH_MAX];
+
+- snprintf(procpath, sizeof(procpath), "/proc/%d/exe", getpid());
+- if(!readlink_w(procpath, buf, sizeof(buf)))
+- args[a++]=(char *)buf;
+- else if(is_reg_lstat(prog_long)>0)
+- args[a++]=(char *)prog_long;
+- else
+- args[a++]=(char *)"/usr/sbin/burp";
+-
++ args[a++]=(char *)"${TRUEPREFIX}/sbin/burp";
+ args[a++]=(char *)"-c";
+ args[a++]=get_string(confs[OPT_CONFFILE]);
+ args[a++]=(char *)"-a";
diff --git pkg/DESCR pkg/DESCR
new file mode 100644
index 00000000000..01a51148382
--- /dev/null
+++ pkg/DESCR
@@ -0,0 +1,4 @@
+Burp is a network backup and restore program. It attempts to reduce
+network traffic and the amount of space that is used by each backup,
+and uses VSS (Volume Shadow Copy Service) to make snapshots when
+backing up Windows computers.
diff --git pkg/PLIST pkg/PLIST
new file mode 100644
index 00000000000..71f076924f1
--- /dev/null
+++ pkg/PLIST
@@ -0,0 +1,72 @@
+@comment $OpenBSD: PLIST,v 1.1.1.1 2017/11/03 11:31:01 landry Exp $
+@option is-branch
+@conflict burp-*
+@newgroup _burp:794
+@newuser _burp:794:794:daemon:BackUp and Recovery Daemon:/var/empty:/sbin/nologin
+@bin bin/vss_strip
+@man man/man8/bedup.8
+@man man/man8/bsigs.8
+@man man/man8/burp.8
+@man man/man8/burp_ca.8
+@man man/man8/vss_strip.8
+sbin/bedup
+sbin/bsigs
+@bin sbin/burp
+sbin/burp_ca
+share/burp/
+share/burp/scripts/
+share/burp/scripts/notify_script
+share/burp/scripts/ssl_extra_checks_script
+share/burp/scripts/summary_script
+share/burp/scripts/timer_script
+share/doc/burp/
+share/doc/burp/CHANGELOG
+share/doc/burp/CONTRIBUTORS
+share/doc/burp/DONATIONS
+share/doc/burp/LICENSE
+share/doc/burp/README
+share/doc/burp/UPGRADING
+share/doc/burp/add-remove.txt
+share/doc/burp/autoupgrade.txt
+share/doc/burp/backup_phases.txt
+share/doc/burp/baremetal-windows2008.txt
+share/doc/burp/baremetal-windows7-hirens.txt
+share/doc/burp/baremetal-windows7.txt
+share/doc/burp/baremetal-windows7and8.txt
+share/doc/burp/burp_ca.txt
+share/doc/burp/debug.txt
+share/doc/burp/readwrite.txt
+share/doc/burp/retention.txt
+share/doc/burp/security-models.txt
+share/doc/burp/server-basics.txt
+share/doc/burp/shuffling.txt
+share/doc/burp/status-monitor.txt
+share/doc/burp/tests.txt
+share/doc/burp/timer_script.txt
+share/doc/burp/working_dir.txt
+@mode 770
+@owner _burp
+@group _burp
+share/examples/burp/
+@sample ${SYSCONFDIR}/burp/
+share/examples/burp/CA-client/
+@sample ${SYSCONFDIR}/burp/CA-client/
+share/examples/burp/CA.cnf
+@sample ${SYSCONFDIR}/burp/CA.cnf
+share/examples/burp/burp-server.conf
+@sample ${SYSCONFDIR}/burp/burp-server.conf
+share/examples/burp/burp.conf
+@sample ${SYSCONFDIR}/burp/burp.conf
+share/examples/burp/clientconfdir/
+@sample ${SYSCONFDIR}/burp/clientconfdir/
+share/examples/burp/clientconfdir/incexc/
+@sample ${SYSCONFDIR}/burp/clientconfdir/incexc/
+share/examples/burp/clientconfdir/incexc/example
+@sample ${SYSCONFDIR}/burp/clientconfdir/incexc/example
+share/examples/burp/clientconfdir/testclient
+@sample ${SYSCONFDIR}/burp/clientconfdir/testclient
+@sample /var/spool/burp/
+@mode
+@owner
+@group
+@rcscript ${RCDIR}/burp
diff --git pkg/burp.rc pkg/burp.rc
new file mode 100644
index 00000000000..98d0505c4ac
--- /dev/null
+++ pkg/burp.rc
@@ -0,0 +1,15 @@
+#!/bin/ksh
+#
+# $OpenBSD: burp.rc,v 1.3 2018/01/11 19:27:10 rpe Exp $
+
+daemon="${TRUEPREFIX}/sbin/burp"
+daemon_flags="-c ${SYSCONFDIR}/burp/burp-server.conf"
+
+. /etc/rc.d/rc.subr
+
+rc_pre() {
+ chown _burp ${SYSCONFDIR}/burp/ssl_cert_ca.pem
+ install -d -o _burp -g _burp /var/run/burp
+}
+
+rc_cmd $1

Reply | Threaded
Open this post in threaded view
|

Re: UPDATE: burp -> 2.0/2.0.54, stable (2.1.28)

Stuart Henderson
On 2018/02/28 16:43, Jiri B wrote:
> On Thu, Feb 22, 2018 at 08:08:02PM -0500, Jiri B wrote:
> > I have no idea how to solve this - no conflict, thus one could have
> > old server and would like to install new client or vice-versa.
> > What to do with configuration files? I have no opinion.
>
> Hi,
>
> I hope I finally was successful to make diff for burp.

Diff only has one of the two versions. Can you just send a tar?

> - moving current port version into '2.0' subdir
> - adding 'stable' subdir for 2.1.28

2.0 and 'stable' doesn't seem very natural. I think this would
be better named 2.0 and 2.1.

> - I would love to know how to build -static flavor so I could use burp
>   for disaster recovery from ramdisk env.

You're into custom ramdisks then really, which is beyond the scope of
ports. It would probably need to be non-PIE as well as static. I think
you'd have less trouble with a USB stick or netboot installation
rather than ramdisk for DR.

> - If there would be pledge restrictions, it would be great too...

As a starting point: run it under ktrace, exercise as many options
as possible, figure out somewhere you can draw a line as "program has
initialised", and see which system calls it uses after that point.

> Question: I could not do 'make fetch' in 'stable' subdir, it was
> showing error that distinfo does not exist, no idea what's going on?!

make makesum, but you might still have problems until sourceforge
is a bit more mended.

Reply | Threaded
Open this post in threaded view
|

Re: UPDATE: burp -> 2.0/2.0.54, stable (2.1.28)

Jiri B-2
On Wed, Feb 28, 2018 at 10:05:57PM +0000, Stuart Henderson wrote:
> > I hope I finally was successful to make diff for burp.
>
> Diff only has one of the two versions. Can you just send a tar?

OK, new diff and tarball attached.

> > - moving current port version into '2.0' subdir
> > - adding 'stable' subdir for 2.1.28
>
> 2.0 and 'stable' doesn't seem very natural. I think this would
> be better named 2.0 and 2.1.
>
> > - I would love to know how to build -static flavor so I could use burp
> >   for disaster recovery from ramdisk env.
>
> You're into custom ramdisks then really, which is beyond the scope of
> ports. It would probably need to be non-PIE as well as static. I think
> you'd have less trouble with a USB stick or netboot installation
> rather than ramdisk for DR.
I was using install and restore over it in the past - although on RHEL -
and I was not very happy about it, too much fragile IMO.

Thank you for help.

Jiri

diff --git sysutils/burp/2.0/Makefile sysutils/burp/2.0/Makefile
new file mode 100644
index 00000000000..ceb51612cbf
--- /dev/null
+++ sysutils/burp/2.0/Makefile
@@ -0,0 +1,13 @@
+# $OpenBSD: Makefile,v 1.3 2018/02/09 10:41:45 nigel Exp $
+
+VERSION = 2.0.54
+REVISION = 1
+
+post-patch:
+ ${SUBST_CMD} ${WRKSRC}/src/client/monitor/status_client_ncurses.c
+
+post-install:
+ @rm -Rf ${WRKINST}/${SYSCONFDIR}/burp/autoupgrade
+ @mv ${WRKINST}/${SYSCONFDIR}/burp ${PREFIX}/share/examples/burp
+
+.include <bsd.port.mk>
diff --git sysutils/burp/distinfo sysutils/burp/2.0/distinfo
similarity index 100%
rename from sysutils/burp/distinfo
rename to sysutils/burp/2.0/distinfo
diff --git sysutils/burp/patches/patch-Makefile_in sysutils/burp/2.0/patches/patch-Makefile_in
similarity index 100%
rename from sysutils/burp/patches/patch-Makefile_in
rename to sysutils/burp/2.0/patches/patch-Makefile_in
diff --git sysutils/burp/patches/patch-configs_client_burp_conf_in sysutils/burp/2.0/patches/patch-configs_client_burp_conf_in
similarity index 100%
rename from sysutils/burp/patches/patch-configs_client_burp_conf_in
rename to sysutils/burp/2.0/patches/patch-configs_client_burp_conf_in
diff --git sysutils/burp/patches/patch-configs_server_burp_conf_in sysutils/burp/2.0/patches/patch-configs_server_burp_conf_in
similarity index 100%
rename from sysutils/burp/patches/patch-configs_server_burp_conf_in
rename to sysutils/burp/2.0/patches/patch-configs_server_burp_conf_in
diff --git sysutils/burp/patches/patch-configs_server_timer_script sysutils/burp/2.0/patches/patch-configs_server_timer_script
similarity index 100%
rename from sysutils/burp/patches/patch-configs_server_timer_script
rename to sysutils/burp/2.0/patches/patch-configs_server_timer_script
diff --git sysutils/burp/patches/patch-src_client_monitor_status_client_ncurses_c sysutils/burp/2.0/patches/patch-src_client_monitor_status_client_ncurses_c
similarity index 100%
rename from sysutils/burp/patches/patch-src_client_monitor_status_client_ncurses_c
rename to sysutils/burp/2.0/patches/patch-src_client_monitor_status_client_ncurses_c
diff --git sysutils/burp/pkg/DESCR sysutils/burp/2.0/pkg/DESCR
similarity index 100%
rename from sysutils/burp/pkg/DESCR
rename to sysutils/burp/2.0/pkg/DESCR
diff --git sysutils/burp/pkg/PLIST sysutils/burp/2.0/pkg/PLIST
similarity index 98%
rename from sysutils/burp/pkg/PLIST
rename to sysutils/burp/2.0/pkg/PLIST
index 767d2faa6e1..71f076924f1 100644
--- sysutils/burp/pkg/PLIST
+++ sysutils/burp/2.0/pkg/PLIST
@@ -1,4 +1,6 @@
 @comment $OpenBSD: PLIST,v 1.1.1.1 2017/11/03 11:31:01 landry Exp $
+@option is-branch
+@conflict burp-*
 @newgroup _burp:794
 @newuser _burp:794:794:daemon:BackUp and Recovery Daemon:/var/empty:/sbin/nologin
 @bin bin/vss_strip
diff --git sysutils/burp/pkg/burp.rc sysutils/burp/2.0/pkg/burp.rc
similarity index 100%
rename from sysutils/burp/pkg/burp.rc
rename to sysutils/burp/2.0/pkg/burp.rc
diff --git sysutils/burp/Makefile sysutils/burp/Makefile
index c7292cb155d..abe55ff38ee 100644
--- sysutils/burp/Makefile
+++ sysutils/burp/Makefile
@@ -1,34 +1,7 @@
-# $OpenBSD: Makefile,v 1.3 2018/02/09 10:41:45 nigel Exp $
+# $OpenBSD$
 
-COMMENT = BackUp and Restore Program
-DISTNAME = burp-2.0.54
-REVISION = 1
+SUBDIR =
+SUBDIR += 2.0
+SUBDIR += stable
 
-CATEGORIES = sysutils
-HOMEPAGE = http://burp.grke.org/
-
-# AGPLv3
-PERMIT_PACKAGE_CDROM = Yes
-
-MASTER_SITES = ${MASTER_SITE_SOURCEFORGE:=burp/}
-EXTRACT_SUFX = .tar.bz2
-
-CONFIGURE_STYLE = gnu
-INSTALL_TARGET = install-all
-
-# check is used for tests but detected at configure time
-BUILD_DEPENDS = devel/uthash \
- devel/check
-LIB_DEPENDS = net/librsync
-RUN_DEPENDS = shells/bash
-WANTLIB += b2 c crypto m curses rsync ssl z
-
-SUBST_VARS += TRUEPREFIX
-post-patch:
- ${SUBST_CMD} ${WRKSRC}/src/client/monitor/status_client_ncurses.c
-
-post-install:
- @rm -Rf ${WRKINST}/${SYSCONFDIR}/burp/autoupgrade
- @mv ${WRKINST}/${SYSCONFDIR}/burp ${PREFIX}/share/examples/burp
-
-.include <bsd.port.mk>
+.include <bsd.port.subdir.mk>
diff --git sysutils/burp/Makefile.inc sysutils/burp/Makefile.inc
new file mode 100644
index 00000000000..4031ddc310b
--- /dev/null
+++ sysutils/burp/Makefile.inc
@@ -0,0 +1,28 @@
+# $OpenBSD$
+
+COMMENT = BackUp and Restore Program
+DISTNAME = burp-${VERSION}
+
+CATEGORIES = sysutils
+HOMEPAGE = http://burp.grke.org/
+
+# AGPLv3
+PERMIT_PACKAGE_CDROM = Yes
+
+MASTER_SITES = ${MASTER_SITE_SOURCEFORGE:=burp/}
+EXTRACT_SUFX = .tar.bz2
+
+CONFIGURE_STYLE = gnu
+INSTALL_TARGET = install-all
+
+# check is used for tests but detected at configure time
+BUILD_DEPENDS = devel/uthash \
+ devel/check
+LIB_DEPENDS = net/librsync
+RUN_DEPENDS = shells/bash
+WANTLIB += b2 c crypto m curses rsync ssl z
+
+SUBST_VARS += TRUEPREFIX
+
+pre-install:
+ ${INSTALL_DATA_DIR} ${DESTDIR}${SYSCONFDIR}/burp
diff --git sysutils/burp/stable/Makefile sysutils/burp/stable/Makefile
new file mode 100644
index 00000000000..5b20ecdc694
--- /dev/null
+++ sysutils/burp/stable/Makefile
@@ -0,0 +1,14 @@
+# $OpenBSD$
+
+VERSION = 2.1.28
+
+post-install:
+ @rm -Rf ${WRKINST}/${SYSCONFDIR}/burp/autoupgrade
+ @mv ${WRKINST}/${SYSCONFDIR}/burp ${PREFIX}/share/examples/burp
+ @perl -pi -e 's,%%LOCALBASE%%,${LOCALBASE},' \
+ ${PREFIX}/share/examples/burp/burp.conf
+
+.include <bsd.port.mk>
+CONFIGURE_ARGS = --sysconfdir="${SYSCONFDIR}/burp" \
+ --mandir="${PREFIX}/man" \
+ --localstatedir="${LOCALSTATEDIR}"
diff --git sysutils/burp/stable/distinfo sysutils/burp/stable/distinfo
new file mode 100644
index 00000000000..b1d87766a7f
--- /dev/null
+++ sysutils/burp/stable/distinfo
@@ -0,0 +1,2 @@
+SHA256 (burp-2.1.28.tar.bz2) = xiX+2anZEfJQB8sBidlB778WRJzwLoWZ1vUGkBqezX0=
+SIZE (burp-2.1.28.tar.bz2) = 781414
diff --git sysutils/burp/stable/patches/patch-configs_client_burp_conf_in sysutils/burp/stable/patches/patch-configs_client_burp_conf_in
new file mode 100644
index 00000000000..9bf29f50442
--- /dev/null
+++ sysutils/burp/stable/patches/patch-configs_client_burp_conf_in
@@ -0,0 +1,15 @@
+$OpenBSD$
+
+Index: configs/client/burp.conf.in
+--- configs/client/burp.conf.in.orig
++++ configs/client/burp.conf.in
+@@ -13,7 +13,8 @@ cname = testclient
+ # with a pseudo mirrored storage on the server and optional rsync). 2 forces
+ # protocol2 mode (inline deduplication with variable length blocks).
+ # protocol = 0
+-pidfile = @runstatedir@/@name@.client.pid
++pidfile = @runstatedir@/burp/@name@.client.pid
++monitor_exe = %%LOCALBASE%%/sbin/burp
+ syslog = 0
+ stdout = 1
+ progress_counter = 1
diff --git sysutils/burp/stable/patches/patch-configs_server_burp_conf_in sysutils/burp/stable/patches/patch-configs_server_burp_conf_in
new file mode 100644
index 00000000000..e9c7fc439a1
--- /dev/null
+++ sysutils/burp/stable/patches/patch-configs_server_burp_conf_in
@@ -0,0 +1,34 @@
+$OpenBSD$
+
+Index: configs/server/burp.conf.in
+--- configs/server/burp.conf.in.orig
++++ configs/server/burp.conf.in
+@@ -23,7 +23,7 @@ max_status_children = 5
+ # max_status_children = 6
+
+ directory = @localstatedir@/spool/@name@
+-dedup_group = global
++dedup_group = _burp
+ clientconfdir = @sysconfdir@/clientconfdir
+ # Choose the protocol to use.
+ # 0 to decide automatically, 1 to force protocol1 mode (file level granularity
+@@ -32,7 +32,7 @@ clientconfdir = @sysconfdir@/clientconfdir
+ # Like many other settings, this can be set per client in the clientconfdir
+ # files.
+ # protocol = 0
+-pidfile = @runstatedir@/@name@.server.pid
++pidfile = @runstatedir@/burp/@name@.server.pid
+ hardlinked_archive = 0
+ working_dir_recovery_method = delete
+ umask = 0022
+@@ -76,8 +76,8 @@ keep = 7
+ # keep = 6
+
+ # Run as different user/group.
+-# user=graham
+-# group=nogroup
++user=_burp
++group=_burp
+
+ # CA options.
+ # If you want your server to be a certificate authority and generate its own
diff --git sysutils/burp/stable/pkg/DESCR sysutils/burp/stable/pkg/DESCR
new file mode 100644
index 00000000000..01a51148382
--- /dev/null
+++ sysutils/burp/stable/pkg/DESCR
@@ -0,0 +1,4 @@
+Burp is a network backup and restore program. It attempts to reduce
+network traffic and the amount of space that is used by each backup,
+and uses VSS (Volume Shadow Copy Service) to make snapshots when
+backing up Windows computers.
diff --git sysutils/burp/stable/pkg/PLIST sysutils/burp/stable/pkg/PLIST
new file mode 100644
index 00000000000..37ad14e4c53
--- /dev/null
+++ sysutils/burp/stable/pkg/PLIST
@@ -0,0 +1,74 @@
+@comment $OpenBSD: PLIST,v 1.1.1.1 2017/11/03 11:31:01 landry Exp $
+@option is-branch
+@conflict burp-*
+@newgroup _burp:794
+@newuser _burp:794:794:daemon:BackUp and Recovery Daemon:/var/empty:/sbin/nologin
+@bin bin/vss_strip
+@man man/man8/bedup.8
+@man man/man8/bsigs.8
+@man man/man8/bsparse.8
+@man man/man8/burp.8
+@man man/man8/burp_ca.8
+@man man/man8/vss_strip.8
+sbin/bedup
+sbin/bsigs
+sbin/bsparse
+@bin sbin/burp
+sbin/burp_ca
+share/burp/
+share/burp/scripts/
+share/burp/scripts/notify_script
+share/burp/scripts/ssl_extra_checks_script
+share/burp/scripts/summary_script
+share/burp/scripts/timer_script
+share/doc/burp/
+share/doc/burp/CHANGELOG
+share/doc/burp/CONTRIBUTORS
+share/doc/burp/DONATIONS
+share/doc/burp/LICENSE
+share/doc/burp/README
+share/doc/burp/UPGRADING
+share/doc/burp/add-remove.txt
+share/doc/burp/autoupgrade.txt
+share/doc/burp/backup_phases.txt
+share/doc/burp/baremetal-windows2008.txt
+share/doc/burp/baremetal-windows7-hirens.txt
+share/doc/burp/baremetal-windows7.txt
+share/doc/burp/baremetal-windows7and8.txt
+share/doc/burp/burp_ca.txt
+share/doc/burp/debug.txt
+share/doc/burp/readwrite.txt
+share/doc/burp/retention.txt
+share/doc/burp/security-models.txt
+share/doc/burp/server-basics.txt
+share/doc/burp/shuffling.txt
+share/doc/burp/status-monitor.txt
+share/doc/burp/tests.txt
+share/doc/burp/timer_script.txt
+share/doc/burp/working_dir.txt
+@mode 770
+@owner _burp
+@group _burp
+share/examples/burp/
+@sample ${SYSCONFDIR}/burp/
+share/examples/burp/CA-client/
+@sample ${SYSCONFDIR}/burp/CA-client/
+share/examples/burp/CA.cnf
+@sample ${SYSCONFDIR}/burp/CA.cnf
+share/examples/burp/burp-server.conf
+@sample ${SYSCONFDIR}/burp/burp-server.conf
+share/examples/burp/burp.conf
+@sample ${SYSCONFDIR}/burp/burp.conf
+share/examples/burp/clientconfdir/
+@sample ${SYSCONFDIR}/burp/clientconfdir/
+share/examples/burp/clientconfdir/incexc/
+@sample ${SYSCONFDIR}/burp/clientconfdir/incexc/
+share/examples/burp/clientconfdir/incexc/example
+@sample ${SYSCONFDIR}/burp/clientconfdir/incexc/example
+share/examples/burp/clientconfdir/testclient
+@sample ${SYSCONFDIR}/burp/clientconfdir/testclient
+@sample /var/spool/burp/
+@mode
+@owner
+@group
+@rcscript ${RCDIR}/burp
diff --git sysutils/burp/stable/pkg/burp.rc sysutils/burp/stable/pkg/burp.rc
new file mode 100644
index 00000000000..98d0505c4ac
--- /dev/null
+++ sysutils/burp/stable/pkg/burp.rc
@@ -0,0 +1,15 @@
+#!/bin/ksh
+#
+# $OpenBSD: burp.rc,v 1.3 2018/01/11 19:27:10 rpe Exp $
+
+daemon="${TRUEPREFIX}/sbin/burp"
+daemon_flags="-c ${SYSCONFDIR}/burp/burp-server.conf"
+
+. /etc/rc.d/rc.subr
+
+rc_pre() {
+ chown _burp ${SYSCONFDIR}/burp/ssl_cert_ca.pem
+ install -d -o _burp -g _burp /var/run/burp
+}
+
+rc_cmd $1

burp.tar.gz (5K) Download Attachment
Reply | Threaded
Open this post in threaded view
|

Re: UPDATE: burp -> 2.0/2.0.54, stable (2.1.28)

Stuart Henderson
On 2018/02/28 17:32, Jiri B wrote:
> OK, new diff and tarball attached.

I've cleaned it up a bit. Does it still work for you?

Index: Makefile
===================================================================
RCS file: /cvs/ports/sysutils/burp/Makefile,v
retrieving revision 1.3
diff -u -p -r1.3 Makefile
--- Makefile 9 Feb 2018 10:41:45 -0000 1.3
+++ Makefile 2 Mar 2018 20:45:49 -0000
@@ -1,34 +1,7 @@
-# $OpenBSD: Makefile,v 1.3 2018/02/09 10:41:45 nigel Exp $
+# $OpenBSD$
 
-COMMENT = BackUp and Restore Program
-DISTNAME = burp-2.0.54
-REVISION = 1
+SUBDIR =
+SUBDIR += 2.0
+SUBDIR += 2.1
 
-CATEGORIES = sysutils
-HOMEPAGE = http://burp.grke.org/
-
-# AGPLv3
-PERMIT_PACKAGE_CDROM = Yes
-
-MASTER_SITES = ${MASTER_SITE_SOURCEFORGE:=burp/}
-EXTRACT_SUFX = .tar.bz2
-
-CONFIGURE_STYLE = gnu
-INSTALL_TARGET = install-all
-
-# check is used for tests but detected at configure time
-BUILD_DEPENDS = devel/uthash \
- devel/check
-LIB_DEPENDS = net/librsync
-RUN_DEPENDS = shells/bash
-WANTLIB += b2 c crypto m curses rsync ssl z
-
-SUBST_VARS += TRUEPREFIX
-post-patch:
- ${SUBST_CMD} ${WRKSRC}/src/client/monitor/status_client_ncurses.c
-
-post-install:
- @rm -Rf ${WRKINST}/${SYSCONFDIR}/burp/autoupgrade
- @mv ${WRKINST}/${SYSCONFDIR}/burp ${PREFIX}/share/examples/burp
-
-.include <bsd.port.mk>
+.include <bsd.port.subdir.mk>
Index: Makefile.inc
===================================================================
RCS file: Makefile.inc
diff -N Makefile.inc
--- /dev/null 1 Jan 1970 00:00:00 -0000
+++ Makefile.inc 2 Mar 2018 20:45:49 -0000
@@ -0,0 +1,32 @@
+# $OpenBSD$
+
+COMMENT = BackUp and Restore Program
+DISTNAME = burp-${VERSION}
+
+CATEGORIES = sysutils
+HOMEPAGE = http://burp.grke.org/
+
+# AGPLv3
+PERMIT_PACKAGE_CDROM = Yes
+
+WANTLIB ?= b2 c crypto m curses rsync ssl z
+
+MASTER_SITES = ${MASTER_SITE_SOURCEFORGE:=burp/}
+
+EXTRACT_SUFX = .tar.bz2
+
+CONFIGURE_STYLE = gnu
+INSTALL_TARGET = install-all
+
+# check is used for tests but detected at configure time
+BUILD_DEPENDS = devel/check \
+ devel/uthash
+LIB_DEPENDS = net/librsync
+RUN_DEPENDS = shells/bash
+SYSCONFDIR = ${BASESYSCONFDIR}/burp
+CONFIGURE_ENV = runstatedir=${LOCALSTATEDIR}/run/burp
+
+# configs are subst'ed in fake; use mv, don't override sysconfdir in FAKE_FLAGS
+post-install:
+ rm -Rf ${WRKINST}${SYSCONFDIR}/autoupgrade
+ mv ${WRKINST}${SYSCONFDIR} ${PREFIX}/share/examples/
Index: distinfo
===================================================================
RCS file: distinfo
diff -N distinfo
--- distinfo 3 Nov 2017 11:31:01 -0000 1.1.1.1
+++ /dev/null 1 Jan 1970 00:00:00 -0000
@@ -1,2 +0,0 @@
-SHA256 (burp-2.0.54.tar.bz2) = rhBHBYbx/uRVbqrls8UreM/A6sQQn0uCU8VJ5/8ADYY=
-SIZE (burp-2.0.54.tar.bz2) = 754566
Index: 2.0/Makefile
===================================================================
RCS file: 2.0/Makefile
diff -N 2.0/Makefile
--- /dev/null 1 Jan 1970 00:00:00 -0000
+++ 2.0/Makefile 2 Mar 2018 20:45:49 -0000
@@ -0,0 +1,9 @@
+# $OpenBSD: Makefile,v 1.3 2018/02/09 10:41:45 nigel Exp $
+
+VERSION = 2.0.54
+REVISION = 1
+
+post-patch:
+ ${SUBST_CMD} ${WRKSRC}/src/client/monitor/status_client_ncurses.c
+
+.include <bsd.port.mk>
Index: 2.0/distinfo
===================================================================
RCS file: 2.0/distinfo
diff -N 2.0/distinfo
--- /dev/null 1 Jan 1970 00:00:00 -0000
+++ 2.0/distinfo 2 Mar 2018 20:45:49 -0000
@@ -0,0 +1,2 @@
+SHA256 (burp-2.0.54.tar.bz2) = rhBHBYbx/uRVbqrls8UreM/A6sQQn0uCU8VJ5/8ADYY=
+SIZE (burp-2.0.54.tar.bz2) = 754566
Index: 2.0/patches/patch-configs_server_burp_conf_in
===================================================================
RCS file: 2.0/patches/patch-configs_server_burp_conf_in
diff -N 2.0/patches/patch-configs_server_burp_conf_in
--- /dev/null 1 Jan 1970 00:00:00 -0000
+++ 2.0/patches/patch-configs_server_burp_conf_in 2 Mar 2018 20:45:49 -0000
@@ -0,0 +1,17 @@
+$OpenBSD: patch-configs_server_burp_conf_in,v 1.1.1.1 2017/11/03 11:31:01 landry Exp $
+
+Index: configs/server/burp.conf.in
+--- configs/server/burp.conf.in.orig
++++ configs/server/burp.conf.in
+@@ -68,8 +68,9 @@ keep = 7
+ # keep = 6
+
+ # Run as different user/group.
+-# user=graham
+-# group=nogroup
++user=_burp
++group=_burp
++dedup_group=_burp
+
+ # CA options.
+ # If you want your server to be a certificate authority and generate its own
Index: 2.0/patches/patch-configs_server_timer_script
===================================================================
RCS file: 2.0/patches/patch-configs_server_timer_script
diff -N 2.0/patches/patch-configs_server_timer_script
--- /dev/null 1 Jan 1970 00:00:00 -0000
+++ 2.0/patches/patch-configs_server_timer_script 2 Mar 2018 20:45:49 -0000
@@ -0,0 +1,42 @@
+$OpenBSD: patch-configs_server_timer_script,v 1.1.1.1 2017/11/03 11:31:01 landry Exp $
+
+https://github.com/grke/burp/issues/627
+
+Index: configs/server/timer_script
+--- configs/server/timer_script.orig
++++ configs/server/timer_script
+@@ -77,29 +77,12 @@ get_intervals()
+
+ read junk ts < "$timestamp"
+
+- if   ! secs=$(LANG=C LC_TIME=C date +%s -d "$ts") \
+-  || ! now=$(LANG=C LC_TIME=C date +"%Y-%m-%d %H:%M:%S") \
+-  || ! nowsecs=$(LANG=C LC_TIME=C date +%s -d "$now")
+- then
+- echo "$0: Date command returned error for $client."
+- return 0
+- fi
+-
++ mts=$(echo $ts | sed -e 's/-//g; s/ //; s/://; s/:/./')
++ secs=$(LANG=C LC_TIME=C date -j "$mts" +%s)
++ now=$(LANG=C LC_TIME=C date +"%Y-%m-%d %H:%M:%S")
++ nowsecs=$(LANG=C LC_TIME=C date +%s)
+ min_timesecs=$((secs+intervalsecs))
+-
+- # GNU coreutils 'date' command should accept the following (even
+- # slightly old versions).
+- if ! min_time=$(LANG=C LC_TIME=C date -d "Jan 1, 1970 00:00:00 +0000 + $min_timesecs seconds" +"%Y-%m-%d %H:%M:%S")
+- then
+- # FreeBSD 'date' will return an error with the above, so try
+- # a version that FreeBSD 'date' should be happy with.
+- if ! min_time=$(LANG=C LC_TIME=C date -r $min_timesecs +"%Y-%m-%d %H:%M:%S")
+- then
+- echo "$0: Date command returned error for $client."
+- return 0
+- fi
+- fi
+-
++ min_time=$(LANG=C LC_TIME=C date -r $min_timesecs +"%Y-%m-%d %H:%M:%S")
+ echo "Last backup: $ts"
+ echo "Next after : $min_time (interval $interval)"
+
Index: 2.0/patches/patch-src_client_monitor_status_client_ncurses_c
===================================================================
RCS file: 2.0/patches/patch-src_client_monitor_status_client_ncurses_c
diff -N 2.0/patches/patch-src_client_monitor_status_client_ncurses_c
--- /dev/null 1 Jan 1970 00:00:00 -0000
+++ 2.0/patches/patch-src_client_monitor_status_client_ncurses_c 2 Mar 2018 20:45:49 -0000
@@ -0,0 +1,23 @@
+$OpenBSD: patch-src_client_monitor_status_client_ncurses_c,v 1.1.1.1 2017/11/03 11:31:01 landry Exp $
+
+https://github.com/grke/burp/issues/626
+
+Index: src/client/monitor/status_client_ncurses.c
+--- src/client/monitor/status_client_ncurses.c.orig
++++ src/client/monitor/status_client_ncurses.c
+@@ -1453,14 +1453,7 @@ static pid_t fork_monitor(int *csin, int *csout, struc
+ char procpath[32];
+ char buf[PATH_MAX];
+
+- snprintf(procpath, sizeof(procpath), "/proc/%d/exe", getpid());
+- if(!readlink_w(procpath, buf, sizeof(buf)))
+- args[a++]=(char *)buf;
+- else if(is_reg_lstat(prog_long)>0)
+- args[a++]=(char *)prog_long;
+- else
+- args[a++]=(char *)"/usr/sbin/burp";
+-
++ args[a++]=(char *)"${TRUEPREFIX}/sbin/burp";
+ args[a++]=(char *)"-c";
+ args[a++]=get_string(confs[OPT_CONFFILE]);
+ args[a++]=(char *)"-a";
Index: 2.0/pkg/DESCR
===================================================================
RCS file: 2.0/pkg/DESCR
diff -N 2.0/pkg/DESCR
--- /dev/null 1 Jan 1970 00:00:00 -0000
+++ 2.0/pkg/DESCR 2 Mar 2018 20:45:49 -0000
@@ -0,0 +1,4 @@
+Burp is a network backup and restore program. It attempts to reduce
+network traffic and the amount of space that is used by each backup,
+and uses VSS (Volume Shadow Copy Service) to make snapshots when
+backing up Windows computers.
Index: 2.0/pkg/PLIST
===================================================================
RCS file: 2.0/pkg/PLIST
diff -N 2.0/pkg/PLIST
--- /dev/null 1 Jan 1970 00:00:00 -0000
+++ 2.0/pkg/PLIST 2 Mar 2018 20:45:49 -0000
@@ -0,0 +1,75 @@
+@comment $OpenBSD: PLIST,v 1.1.1.1 2017/11/03 11:31:01 landry Exp $
+@option is-branch
+@conflict burp-*
+@newgroup _burp:794
+@newuser _burp:794:794:daemon:BackUp and Recovery Daemon:/var/empty:/sbin/nologin
+@bin bin/vss_strip
+@man man/man8/bedup.8
+@man man/man8/bsigs.8
+@man man/man8/burp.8
+@man man/man8/burp_ca.8
+@man man/man8/vss_strip.8
+sbin/bedup
+sbin/bsigs
+@bin sbin/burp
+sbin/burp_ca
+share/burp/
+share/burp/scripts/
+share/burp/scripts/notify_script
+share/burp/scripts/ssl_extra_checks_script
+share/burp/scripts/summary_script
+share/burp/scripts/timer_script
+share/doc/burp/
+share/doc/burp/CHANGELOG
+share/doc/burp/CONTRIBUTORS
+share/doc/burp/DONATIONS
+share/doc/burp/LICENSE
+share/doc/burp/README
+share/doc/burp/UPGRADING
+share/doc/burp/add-remove.txt
+share/doc/burp/autoupgrade.txt
+share/doc/burp/backup_phases.txt
+share/doc/burp/baremetal-windows2008.txt
+share/doc/burp/baremetal-windows7-hirens.txt
+share/doc/burp/baremetal-windows7.txt
+share/doc/burp/baremetal-windows7and8.txt
+share/doc/burp/burp_ca.txt
+share/doc/burp/debug.txt
+share/doc/burp/readwrite.txt
+share/doc/burp/retention.txt
+share/doc/burp/security-models.txt
+share/doc/burp/server-basics.txt
+share/doc/burp/shuffling.txt
+share/doc/burp/status-monitor.txt
+share/doc/burp/tests.txt
+share/doc/burp/timer_script.txt
+share/doc/burp/working_dir.txt
+@mode 770
+@owner _burp
+@group _burp
+share/examples/burp/
+@sample ${LOCALSTATEDIR}/spool/burp/
+@sample ${SYSCONFDIR}/
+share/examples/burp/CA-client/
+@sample ${SYSCONFDIR}/CA-client/
+@mode 660
+share/examples/burp/CA.cnf
+@sample ${SYSCONFDIR}/CA.cnf
+share/examples/burp/burp-server.conf
+@sample ${SYSCONFDIR}/burp-server.conf
+share/examples/burp/burp.conf
+@sample ${SYSCONFDIR}/burp.conf
+@mode 770
+share/examples/burp/clientconfdir/
+@sample ${SYSCONFDIR}/clientconfdir/
+share/examples/burp/clientconfdir/incexc/
+@sample ${SYSCONFDIR}/clientconfdir/incexc/
+@mode 660
+share/examples/burp/clientconfdir/incexc/example
+@sample ${SYSCONFDIR}/clientconfdir/incexc/example
+share/examples/burp/clientconfdir/testclient
+@sample ${SYSCONFDIR}/clientconfdir/testclient
+@mode
+@owner
+@group
+@rcscript ${RCDIR}/burp
Index: 2.0/pkg/burp.rc
===================================================================
RCS file: 2.0/pkg/burp.rc
diff -N 2.0/pkg/burp.rc
--- /dev/null 1 Jan 1970 00:00:00 -0000
+++ 2.0/pkg/burp.rc 2 Mar 2018 20:45:49 -0000
@@ -0,0 +1,15 @@
+#!/bin/ksh
+#
+# $OpenBSD: burp.rc,v 1.3 2018/01/11 19:27:10 rpe Exp $
+
+daemon="${TRUEPREFIX}/sbin/burp"
+daemon_flags="-c ${SYSCONFDIR}/burp-server.conf"
+
+. /etc/rc.d/rc.subr
+
+rc_pre() {
+ chown _burp ${SYSCONFDIR}/ssl_cert_ca.pem
+ install -d -o _burp -g _burp ${LOCALSTATEDIR}/run/burp
+}
+
+rc_cmd $1
Index: 2.1/Makefile
===================================================================
RCS file: 2.1/Makefile
diff -N 2.1/Makefile
--- /dev/null 1 Jan 1970 00:00:00 -0000
+++ 2.1/Makefile 2 Mar 2018 20:45:49 -0000
@@ -0,0 +1,5 @@
+# $OpenBSD$
+
+VERSION = 2.1.28
+
+.include <bsd.port.mk>
Index: 2.1/distinfo
===================================================================
RCS file: 2.1/distinfo
diff -N 2.1/distinfo
--- /dev/null 1 Jan 1970 00:00:00 -0000
+++ 2.1/distinfo 2 Mar 2018 20:45:49 -0000
@@ -0,0 +1,2 @@
+SHA256 (burp-2.1.28.tar.bz2) = xiX+2anZEfJQB8sBidlB778WRJzwLoWZ1vUGkBqezX0=
+SIZE (burp-2.1.28.tar.bz2) = 781414
Index: 2.1/patches/patch-configs_client_burp_conf_in
===================================================================
RCS file: 2.1/patches/patch-configs_client_burp_conf_in
diff -N 2.1/patches/patch-configs_client_burp_conf_in
--- /dev/null 1 Jan 1970 00:00:00 -0000
+++ 2.1/patches/patch-configs_client_burp_conf_in 2 Mar 2018 20:45:49 -0000
@@ -0,0 +1,13 @@
+$OpenBSD$
+
+Index: configs/client/burp.conf.in
+--- configs/client/burp.conf.in.orig
++++ configs/client/burp.conf.in
+@@ -14,6 +14,7 @@ cname = testclient
+ # protocol2 mode (inline deduplication with variable length blocks).
+ # protocol = 0
+ pidfile = @runstatedir@/@name@.client.pid
++monitor_exe = @prefix@/sbin/burp
+ syslog = 0
+ stdout = 1
+ progress_counter = 1
Index: 2.1/patches/patch-configs_server_burp_conf_in
===================================================================
RCS file: 2.1/patches/patch-configs_server_burp_conf_in
diff -N 2.1/patches/patch-configs_server_burp_conf_in
--- /dev/null 1 Jan 1970 00:00:00 -0000
+++ 2.1/patches/patch-configs_server_burp_conf_in 2 Mar 2018 20:45:49 -0000
@@ -0,0 +1,25 @@
+$OpenBSD$
+
+Index: configs/server/burp.conf.in
+--- configs/server/burp.conf.in.orig
++++ configs/server/burp.conf.in
+@@ -23,7 +23,7 @@ max_status_children = 5
+ # max_status_children = 6
+
+ directory = @localstatedir@/spool/@name@
+-dedup_group = global
++dedup_group = _burp
+ clientconfdir = @sysconfdir@/clientconfdir
+ # Choose the protocol to use.
+ # 0 to decide automatically, 1 to force protocol1 mode (file level granularity
+@@ -76,8 +76,8 @@ keep = 7
+ # keep = 6
+
+ # Run as different user/group.
+-# user=graham
+-# group=nogroup
++user=_burp
++group=_burp
+
+ # CA options.
+ # If you want your server to be a certificate authority and generate its own
Index: 2.1/pkg/DESCR
===================================================================
RCS file: 2.1/pkg/DESCR
diff -N 2.1/pkg/DESCR
--- /dev/null 1 Jan 1970 00:00:00 -0000
+++ 2.1/pkg/DESCR 2 Mar 2018 20:45:49 -0000
@@ -0,0 +1,4 @@
+Burp is a network backup and restore program. It attempts to reduce
+network traffic and the amount of space that is used by each backup,
+and uses VSS (Volume Shadow Copy Service) to make snapshots when
+backing up Windows computers.
Index: 2.1/pkg/PLIST
===================================================================
RCS file: 2.1/pkg/PLIST
diff -N 2.1/pkg/PLIST
--- /dev/null 1 Jan 1970 00:00:00 -0000
+++ 2.1/pkg/PLIST 2 Mar 2018 20:45:49 -0000
@@ -0,0 +1,77 @@
+@comment $OpenBSD: PLIST,v 1.1.1.1 2017/11/03 11:31:01 landry Exp $
+@option is-branch
+@conflict burp-*
+@newgroup _burp:794
+@newuser _burp:794:794:daemon:BackUp and Recovery Daemon:/var/empty:/sbin/nologin
+@bin bin/vss_strip
+@man man/man8/bedup.8
+@man man/man8/bsigs.8
+@man man/man8/bsparse.8
+@man man/man8/burp.8
+@man man/man8/burp_ca.8
+@man man/man8/vss_strip.8
+sbin/bedup
+sbin/bsigs
+sbin/bsparse
+@bin sbin/burp
+sbin/burp_ca
+share/burp/
+share/burp/scripts/
+share/burp/scripts/notify_script
+share/burp/scripts/ssl_extra_checks_script
+share/burp/scripts/summary_script
+share/burp/scripts/timer_script
+share/doc/burp/
+share/doc/burp/CHANGELOG
+share/doc/burp/CONTRIBUTORS
+share/doc/burp/DONATIONS
+share/doc/burp/LICENSE
+share/doc/burp/README
+share/doc/burp/UPGRADING
+share/doc/burp/add-remove.txt
+share/doc/burp/autoupgrade.txt
+share/doc/burp/backup_phases.txt
+share/doc/burp/baremetal-windows2008.txt
+share/doc/burp/baremetal-windows7-hirens.txt
+share/doc/burp/baremetal-windows7.txt
+share/doc/burp/baremetal-windows7and8.txt
+share/doc/burp/burp_ca.txt
+share/doc/burp/debug.txt
+share/doc/burp/readwrite.txt
+share/doc/burp/retention.txt
+share/doc/burp/security-models.txt
+share/doc/burp/server-basics.txt
+share/doc/burp/shuffling.txt
+share/doc/burp/status-monitor.txt
+share/doc/burp/tests.txt
+share/doc/burp/timer_script.txt
+share/doc/burp/working_dir.txt
+@mode 770
+@owner _burp
+@group _burp
+share/examples/burp/
+@sample ${SYSCONFDIR}/
+@sample ${LOCALSTATEDIR}/spool/burp/
+share/examples/burp/CA-client/
+@sample ${SYSCONFDIR}/CA-client/
+@mode 660
+share/examples/burp/CA.cnf
+@sample ${SYSCONFDIR}/CA.cnf
+share/examples/burp/burp-server.conf
+@sample ${SYSCONFDIR}/burp-server.conf
+share/examples/burp/burp.conf
+@sample ${SYSCONFDIR}/burp.conf
+@mode 770
+share/examples/burp/clientconfdir/
+@sample ${SYSCONFDIR}/clientconfdir/
+share/examples/burp/clientconfdir/incexc/
+@sample ${SYSCONFDIR}/clientconfdir/incexc/
+@mode 660
+share/examples/burp/clientconfdir/incexc/example
+@sample ${SYSCONFDIR}/clientconfdir/incexc/example
+share/examples/burp/clientconfdir/testclient
+@sample ${SYSCONFDIR}/clientconfdir/testclient
+@mode
+@owner
+@group
+@rcscript ${RCDIR}/burp
Index: 2.1/pkg/burp.rc
===================================================================
RCS file: 2.1/pkg/burp.rc
diff -N 2.1/pkg/burp.rc
--- /dev/null 1 Jan 1970 00:00:00 -0000
+++ 2.1/pkg/burp.rc 2 Mar 2018 20:45:49 -0000
@@ -0,0 +1,15 @@
+#!/bin/ksh
+#
+# $OpenBSD: burp.rc,v 1.3 2018/01/11 19:27:10 rpe Exp $
+
+daemon="${TRUEPREFIX}/sbin/burp"
+daemon_flags="-c ${SYSCONFDIR}/burp-server.conf"
+
+. /etc/rc.d/rc.subr
+
+rc_pre() {
+ chown _burp ${SYSCONFDIR}/ssl_cert_ca.pem
+ install -d -o _burp -g _burp ${LOCALSTATEDIR}/run/burp
+}
+
+rc_cmd $1
Index: patches/patch-Makefile_in
===================================================================
RCS file: patches/patch-Makefile_in
diff -N patches/patch-Makefile_in
--- patches/patch-Makefile_in 3 Nov 2017 11:31:01 -0000 1.1.1.1
+++ /dev/null 1 Jan 1970 00:00:00 -0000
@@ -1,14 +0,0 @@
-$OpenBSD: patch-Makefile_in,v 1.1.1.1 2017/11/03 11:31:01 landry Exp $
-
-Index: Makefile.in
---- Makefile.in.orig
-+++ Makefile.in
-@@ -625,7 +625,7 @@ sbindir = @sbindir@
- scriptdir = @scriptdir@
- sharedstatedir = @sharedstatedir@
- srcdir = @srcdir@
--sysconfdir = @sysconfdir@
-+sysconfdir = @sysconfdir@/burp
- target_alias = @target_alias@
- top_build_prefix = @top_build_prefix@
- top_builddir = @top_builddir@
Index: patches/patch-configs_client_burp_conf_in
===================================================================
RCS file: patches/patch-configs_client_burp_conf_in
diff -N patches/patch-configs_client_burp_conf_in
--- patches/patch-configs_client_burp_conf_in 3 Nov 2017 11:31:01 -0000 1.1.1.1
+++ /dev/null 1 Jan 1970 00:00:00 -0000
@@ -1,14 +0,0 @@
-$OpenBSD: patch-configs_client_burp_conf_in,v 1.1.1.1 2017/11/03 11:31:01 landry Exp $
-
-Index: configs/client/burp.conf.in
---- configs/client/burp.conf.in.orig
-+++ configs/client/burp.conf.in
-@@ -11,7 +11,7 @@ cname = testclient
- # with a pseudo mirrored storage on the server and optional rsync). 2 forces
- # protocol2 mode (inline deduplication with variable length blocks).
- # protocol = 0
--pidfile = @runstatedir@/burp.client.pid
-+pidfile = @runstatedir@/burp/client.pid
- syslog = 0
- stdout = 1
- progress_counter = 1
Index: patches/patch-configs_server_burp_conf_in
===================================================================
RCS file: patches/patch-configs_server_burp_conf_in
diff -N patches/patch-configs_server_burp_conf_in
--- patches/patch-configs_server_burp_conf_in 3 Nov 2017 11:31:01 -0000 1.1.1.1
+++ /dev/null 1 Jan 1970 00:00:00 -0000
@@ -1,26 +0,0 @@
-$OpenBSD: patch-configs_server_burp_conf_in,v 1.1.1.1 2017/11/03 11:31:01 landry Exp $
-
-Index: configs/server/burp.conf.in
---- configs/server/burp.conf.in.orig
-+++ configs/server/burp.conf.in
-@@ -22,7 +22,7 @@ clientconfdir = @sysconfdir@/clientconfdir
- # Like many other settings, this can be set per client in the clientconfdir
- # files.
- # protocol = 0
--pidfile = @runstatedir@/burp.server.pid
-+pidfile = @runstatedir@/burp/server.pid
- hardlinked_archive = 0
- working_dir_recovery_method = delete
- max_children = 5
-@@ -68,8 +68,9 @@ keep = 7
- # keep = 6
-
- # Run as different user/group.
--# user=graham
--# group=nogroup
-+user=_burp
-+group=_burp
-+dedup_group=_burp
-
- # CA options.
- # If you want your server to be a certificate authority and generate its own
Index: patches/patch-configs_server_timer_script
===================================================================
RCS file: patches/patch-configs_server_timer_script
diff -N patches/patch-configs_server_timer_script
--- patches/patch-configs_server_timer_script 3 Nov 2017 11:31:01 -0000 1.1.1.1
+++ /dev/null 1 Jan 1970 00:00:00 -0000
@@ -1,42 +0,0 @@
-$OpenBSD: patch-configs_server_timer_script,v 1.1.1.1 2017/11/03 11:31:01 landry Exp $
-
-https://github.com/grke/burp/issues/627
-
-Index: configs/server/timer_script
---- configs/server/timer_script.orig
-+++ configs/server/timer_script
-@@ -77,29 +77,12 @@ get_intervals()
-
- read junk ts < "$timestamp"
-
-- if   ! secs=$(LANG=C LC_TIME=C date +%s -d "$ts") \
--  || ! now=$(LANG=C LC_TIME=C date +"%Y-%m-%d %H:%M:%S") \
--  || ! nowsecs=$(LANG=C LC_TIME=C date +%s -d "$now")
-- then
-- echo "$0: Date command returned error for $client."
-- return 0
-- fi
--
-+ mts=$(echo $ts | sed -e 's/-//g; s/ //; s/://; s/:/./')
-+ secs=$(LANG=C LC_TIME=C date -j "$mts" +%s)
-+ now=$(LANG=C LC_TIME=C date +"%Y-%m-%d %H:%M:%S")
-+ nowsecs=$(LANG=C LC_TIME=C date +%s)
- min_timesecs=$((secs+intervalsecs))
--
-- # GNU coreutils 'date' command should accept the following (even
-- # slightly old versions).
-- if ! min_time=$(LANG=C LC_TIME=C date -d "Jan 1, 1970 00:00:00 +0000 + $min_timesecs seconds" +"%Y-%m-%d %H:%M:%S")
-- then
-- # FreeBSD 'date' will return an error with the above, so try
-- # a version that FreeBSD 'date' should be happy with.
-- if ! min_time=$(LANG=C LC_TIME=C date -r $min_timesecs +"%Y-%m-%d %H:%M:%S")
-- then
-- echo "$0: Date command returned error for $client."
-- return 0
-- fi
-- fi
--
-+ min_time=$(LANG=C LC_TIME=C date -r $min_timesecs +"%Y-%m-%d %H:%M:%S")
- echo "Last backup: $ts"
- echo "Next after : $min_time (interval $interval)"
-
Index: patches/patch-src_client_monitor_status_client_ncurses_c
===================================================================
RCS file: patches/patch-src_client_monitor_status_client_ncurses_c
diff -N patches/patch-src_client_monitor_status_client_ncurses_c
--- patches/patch-src_client_monitor_status_client_ncurses_c 3 Nov 2017 11:31:01 -0000 1.1.1.1
+++ /dev/null 1 Jan 1970 00:00:00 -0000
@@ -1,23 +0,0 @@
-$OpenBSD: patch-src_client_monitor_status_client_ncurses_c,v 1.1.1.1 2017/11/03 11:31:01 landry Exp $
-
-https://github.com/grke/burp/issues/626
-
-Index: src/client/monitor/status_client_ncurses.c
---- src/client/monitor/status_client_ncurses.c.orig
-+++ src/client/monitor/status_client_ncurses.c
-@@ -1453,14 +1453,7 @@ static pid_t fork_monitor(int *csin, int *csout, struc
- char procpath[32];
- char buf[PATH_MAX];
-
-- snprintf(procpath, sizeof(procpath), "/proc/%d/exe", getpid());
-- if(!readlink_w(procpath, buf, sizeof(buf)))
-- args[a++]=(char *)buf;
-- else if(is_reg_lstat(prog_long)>0)
-- args[a++]=(char *)prog_long;
-- else
-- args[a++]=(char *)"/usr/sbin/burp";
--
-+ args[a++]=(char *)"${TRUEPREFIX}/sbin/burp";
- args[a++]=(char *)"-c";
- args[a++]=get_string(confs[OPT_CONFFILE]);
- args[a++]=(char *)"-a";
Index: pkg/DESCR
===================================================================
RCS file: pkg/DESCR
diff -N pkg/DESCR
--- pkg/DESCR 3 Nov 2017 11:31:01 -0000 1.1.1.1
+++ /dev/null 1 Jan 1970 00:00:00 -0000
@@ -1,4 +0,0 @@
-Burp is a network backup and restore program. It attempts to reduce
-network traffic and the amount of space that is used by each backup,
-and uses VSS (Volume Shadow Copy Service) to make snapshots when
-backing up Windows computers.
Index: pkg/PLIST
===================================================================
RCS file: pkg/PLIST
diff -N pkg/PLIST
--- pkg/PLIST 3 Nov 2017 11:31:01 -0000 1.1.1.1
+++ /dev/null 1 Jan 1970 00:00:00 -0000
@@ -1,70 +0,0 @@
-@comment $OpenBSD: PLIST,v 1.1.1.1 2017/11/03 11:31:01 landry Exp $
-@newgroup _burp:794
-@newuser _burp:794:794:daemon:BackUp and Recovery Daemon:/var/empty:/sbin/nologin
-@bin bin/vss_strip
-@man man/man8/bedup.8
-@man man/man8/bsigs.8
-@man man/man8/burp.8
-@man man/man8/burp_ca.8
-@man man/man8/vss_strip.8
-sbin/bedup
-sbin/bsigs
-@bin sbin/burp
-sbin/burp_ca
-share/burp/
-share/burp/scripts/
-share/burp/scripts/notify_script
-share/burp/scripts/ssl_extra_checks_script
-share/burp/scripts/summary_script
-share/burp/scripts/timer_script
-share/doc/burp/
-share/doc/burp/CHANGELOG
-share/doc/burp/CONTRIBUTORS
-share/doc/burp/DONATIONS
-share/doc/burp/LICENSE
-share/doc/burp/README
-share/doc/burp/UPGRADING
-share/doc/burp/add-remove.txt
-share/doc/burp/autoupgrade.txt
-share/doc/burp/backup_phases.txt
-share/doc/burp/baremetal-windows2008.txt
-share/doc/burp/baremetal-windows7-hirens.txt
-share/doc/burp/baremetal-windows7.txt
-share/doc/burp/baremetal-windows7and8.txt
-share/doc/burp/burp_ca.txt
-share/doc/burp/debug.txt
-share/doc/burp/readwrite.txt
-share/doc/burp/retention.txt
-share/doc/burp/security-models.txt
-share/doc/burp/server-basics.txt
-share/doc/burp/shuffling.txt
-share/doc/burp/status-monitor.txt
-share/doc/burp/tests.txt
-share/doc/burp/timer_script.txt
-share/doc/burp/working_dir.txt
-@mode 770
-@owner _burp
-@group _burp
-share/examples/burp/
-@sample ${SYSCONFDIR}/burp/
-share/examples/burp/CA-client/
-@sample ${SYSCONFDIR}/burp/CA-client/
-share/examples/burp/CA.cnf
-@sample ${SYSCONFDIR}/burp/CA.cnf
-share/examples/burp/burp-server.conf
-@sample ${SYSCONFDIR}/burp/burp-server.conf
-share/examples/burp/burp.conf
-@sample ${SYSCONFDIR}/burp/burp.conf
-share/examples/burp/clientconfdir/
-@sample ${SYSCONFDIR}/burp/clientconfdir/
-share/examples/burp/clientconfdir/incexc/
-@sample ${SYSCONFDIR}/burp/clientconfdir/incexc/
-share/examples/burp/clientconfdir/incexc/example
-@sample ${SYSCONFDIR}/burp/clientconfdir/incexc/example
-share/examples/burp/clientconfdir/testclient
-@sample ${SYSCONFDIR}/burp/clientconfdir/testclient
-@sample /var/spool/burp/
-@mode
-@owner
-@group
-@rcscript ${RCDIR}/burp
Index: pkg/burp.rc
===================================================================
RCS file: pkg/burp.rc
diff -N pkg/burp.rc
--- pkg/burp.rc 11 Jan 2018 19:27:10 -0000 1.3
+++ /dev/null 1 Jan 1970 00:00:00 -0000
@@ -1,15 +0,0 @@
-#!/bin/ksh
-#
-# $OpenBSD: burp.rc,v 1.3 2018/01/11 19:27:10 rpe Exp $
-
-daemon="${TRUEPREFIX}/sbin/burp"
-daemon_flags="-c ${SYSCONFDIR}/burp/burp-server.conf"
-
-. /etc/rc.d/rc.subr
-
-rc_pre() {
- chown _burp ${SYSCONFDIR}/burp/ssl_cert_ca.pem
- install -d -o _burp -g _burp /var/run/burp
-}
-
-rc_cmd $1

Reply | Threaded
Open this post in threaded view
|

Re: UPDATE: burp -> 2.0/2.0.54, stable (2.1.28)

Jiri B-2
On Fri, Mar 02, 2018 at 08:47:01PM +0000, Stuart Henderson wrote:
> On 2018/02/28 17:32, Jiri B wrote:
> > OK, new diff and tarball attached.
>
> I've cleaned it up a bit. Does it still work for you?

Yes, it does work. Some comments below.

Our pkg* tools don't have a method to upgrade between various
branches? I tried to upgrade from 2.0.54 to 2.1.28 and it seems
our pkg* tools can't do it - thus I did pkg_delete and pkg_add.

While uninstalling 2.0.54 and installing 2.1.28 it revealed
a little change in configuration, 2.1.28 has 'monitor_exe'
option added (so we don't need to keep Landry's patch for this).
But when doing such "upgrade" this little change is not visible.
How to solve this? A 'MESSAGE' or something else?

Thank you for help. It's OK for me.

Jiri

Reply | Threaded
Open this post in threaded view
|

Re: UPDATE: burp -> 2.0/2.0.54, stable (2.1.28)

Stuart Henderson
On 2018/03/03 16:20, Jiri B wrote:

> On Fri, Mar 02, 2018 at 08:47:01PM +0000, Stuart Henderson wrote:
> > On 2018/02/28 17:32, Jiri B wrote:
> > > OK, new diff and tarball attached.
> >
> > I've cleaned it up a bit. Does it still work for you?
>
> Yes, it does work. Some comments below.
>
> Our pkg* tools don't have a method to upgrade between various
> branches? I tried to upgrade from 2.0.54 to 2.1.28 and it seems
> our pkg* tools can't do it - thus I did pkg_delete and pkg_add.

Correct, they're different pkgpaths (and you don't want 2.0.x to auto
update to 2.1.x if it's going to break compatibility, and you don't want
every. single. update. to ask whether to use 2.0 or 2.1. :-)

> While uninstalling 2.0.54 and installing 2.1.28 it revealed
> a little change in configuration, 2.1.28 has 'monitor_exe'
> option added (so we don't need to keep Landry's patch for this).
> But when doing such "upgrade" this little change is not visible.
> How to solve this? A 'MESSAGE' or something else?

In general:

This can happen with normal updates too (it's especially annoying where
there are multiple files and some are edited and some aren't). sysmerge -p
can help a bit.

Specific to this:

It probably makes sense to patch client/monitor/status_client_ncurses.c:1482
to provide a sane fallback, then we don't need to touch the config file.

1480         {
1481                 static char p[64]="";
1482                 snprintf(p, sizeof(p), "/usr/sbin/%s", PACKAGE_TARNAME);
1483                 logp("Using fallback monitor path: %s\n", p);
1484                 args[a++]=p;
1485         }

So I would remove the config patch, and add this to 2.1/Makefile instead:

post-extract:
        sed -i 's,"/usr/sbin/%s","${TRUEPREFIX}/sbin/%s",' \
            ${WRKSRC}/src/client/monitor/status_client_ncurses.c

> Thank you for help. It's OK for me.
>
> Jiri