Compare commits

...

15 Commits

Author SHA1 Message Date
Steven Chamberlain
0853c110e5 Begin port to GNU/kFreeBSD
This is just a minimal port to get Debian up and running; the rest will
be done later.
2013-10-30 15:00:40 -05:00
William Hubbs
1a43ce11d0 bootmisc: do not run clean_run on VSERVER systems
X-Gentoo-Bug: 489370
X-Gentoo-Bug-URL: https://bugs.gentoo.org/show_bug.cgi?id=489370
2013-10-28 15:40:47 -05:00
William Hubbs
46e504b403 loopback: do not run in a prefix or vserver
X-Gentoo-Bug: 489370
X-Gentoo-Bug-URL: https://bugs.gentoo.org/show_bug.cgi?id=489370
2013-10-28 15:40:16 -05:00
William Hubbs
fc1f3d14f4 start 0.12.4 2013-10-28 15:39:19 -05:00
Alexander V Vershilov
b8a016aaba Add uml keyword to fsck service.
Fix relevant an issue mentioned by Toralf Förster.

X-Gentoo-Bug: 481096.
X-Gentoo-Bug-URL: https://bugs.gentoo.org/show_bug.cgi?id=481096
2013-10-18 15:22:24 -05:00
William Hubbs
63f5256b59 start work on OpenRC-0.12.3 2013-10-18 15:19:52 -05:00
Daniel Robbins
c420f56856 FL-786: localmount: support filesystem mounting on openvz 2013-10-08 12:06:09 -05:00
Natanael Copa
5b0f323da9 librc: fix off-by-one bug
We need allocate space for both the added leading '-' and the trailing
'\0'.

Signed-off-by: Natanael Copa <ncopa@alpinelinux.org>
2013-10-08 12:06:09 -05:00
Natanael Copa
d86853538a librc: fix a read off-by-one bug
We should first check if we are within bounds and then read rather than
the opposite.

This makes valgrind happy.

Signed-off-by: Natanael Copa <ncopa@alpinelinux.org>
2013-10-08 12:06:09 -05:00
William Hubbs
f2c0e700c6 netmount: add -lxc keyword
Netmount should not run on lxc, thanks to Mark van Dijk <funtoo@internecto.net>.
2013-10-08 12:06:09 -05:00
William Hubbs
b1de9d7324 start-stop-daemon: fix do_stop calls
Several calls to do_stop were forcing the test parameter to be true,
which was causing extra output to the terminal, such as:

* Would send signal 0 to pid xxxxx

This should only happen if the --test command line option was used.

Conflicts:
	src/rc/start-stop-daemon.c
2013-10-08 12:06:09 -05:00
William Hubbs
5b4886d23e start-stop-daemon: fix eerorr calls in get_pid
The eerror calls in this function make it too verbose, so change them to
ewarnv() calls instead. This means that they will only print if the
--verbose option is used or EINFO_VERBOSE=yes is set in the environment.
2013-10-08 12:06:09 -05:00
William Hubbs
2a53efbc07 start work on OpenRC-0.12.2 2013-10-08 12:03:47 -05:00
William Hubbs
a530722f65 fix cgroup_cleanup function
The yesno test for rc_cgroup_cleanup belongs at the point where this
function is called from runscript, not in the function itself.

X-Gentoo-Bug: 486210
X-Gentoo-Bug-URL: https://bugs.gentoo.org/show_bug.cgi?id=486210
2013-10-02 05:43:51 -05:00
William Hubbs
661e9cf002 start work on OpenRC 0.12.1 2013-10-02 05:40:18 -05:00
18 changed files with 41 additions and 21 deletions

View File

@@ -1,3 +1,3 @@
NAME= openrc
VERSION= 0.12
VERSION= 0.12.4
PKG= ${NAME}-${VERSION}

11
etc/rc.conf.GNU-kFreeBSD Normal file
View File

@@ -0,0 +1,11 @@
##############################################################################
# GNU/kFreeBSD SPECIFIC OPTIONS
# This is the subsystem type. Valid options on GNU/kFreeBSD:
# "" - nothing special
# "jail" - FreeBSD jails (not yet implemented)
# If this is commented out, automatic detection will be used.
#
# This should be set to the value representing the environment this file is
# PRESENTLY in, not the virtualization the environment is capable of.
#rc_sys=""

View File

@@ -117,6 +117,7 @@ migrate_to_run()
clean_run()
{
[ "$RC_SYS" = VSERVER ] && return 0
local dir
dir=$(mktemp -d)
mount --bind / $dir

View File

@@ -9,7 +9,7 @@ _IFS="
depend()
{
use dev clock modules
keyword -jail -openvz -prefix -timeout -vserver -lxc
keyword -jail -openvz -prefix -timeout -vserver -lxc -uml
}
_abort() {

View File

@@ -9,7 +9,7 @@ depend()
need fsck
use lvm modules mtab
after lvm modules
keyword -jail -openvz -prefix -vserver -lxc
keyword -jail -prefix -vserver -lxc
}
start()

View File

@@ -6,7 +6,7 @@ description="Configures the loopback interface."
depend()
{
return 0
keyword -jail -prefix -vserver
}
start()

View File

@@ -12,7 +12,7 @@ depend()
config /etc/fstab
use afc-client amd autofs openvpn
use dns
keyword -jail -prefix -vserver
keyword -jail -prefix -vserver -lxc
}
start()

9
mk/os-GNU-kFreeBSD.mk Normal file
View File

@@ -0,0 +1,9 @@
# Copyright (c) 2008 Roy Marples <roy@marples.name>
# Released under the 2-clause BSD license.
# Generic definitions
CPPFLAGS+= -D_BSD_SOURCE -D_XOPEN_SOURCE=700
LIBDL= -Wl,-Bdynamic -ldl
LIBKVM?=
include ${MK}/os-BSD.mk

View File

@@ -3,7 +3,7 @@
# Generic definitions
_OS_SH= uname -s
_OS_SH= uname -s | tr '/' '-'
_OS:= $(shell ${_OS_SH})
OS?= ${_OS}
include ${MK}/os-${OS}.mk

View File

@@ -116,7 +116,7 @@ cgroup_set_limits()
cgroup_cleanup()
{
yesno "${rc_cgroup_cleanup:-no}" && cgroup_running || return 0
cgroup_running || return 0
ebegin "starting cgroups cleanup"
for sig in TERM QUIT INT; do
cgroup_get_pids || { eend 0 "finished" ; return 0 ; }

View File

@@ -308,6 +308,7 @@ while [ -n "$1" ]; do
fi
[ "$(command -v cgroup_cleanup)" = "cgroup_cleanup" -a \
"$1" = "stop" ] && \
yesno "${rc_cgroup_cleanup}" && \
cgroup_cleanup
shift
continue 2

View File

@@ -30,7 +30,7 @@
#include "librc.h"
#if defined(__linux__)
#if defined(__linux__) || defined (__GLIBC__)
static bool
pid_is_exec(pid_t pid, const char *exec)
{

View File

@@ -856,7 +856,7 @@ rc_deptree_update(void)
* work for them. This doesn't stop them from being run directly. */
if (sys) {
len = strlen(sys);
nosys = xmalloc(len + 1);
nosys = xmalloc(len + 2);
nosys[0] = '-';
for (i = 0; i < len; i++)
nosys[i + 1] = (char)tolower((unsigned char)sys[i]);

View File

@@ -193,7 +193,7 @@ file_regex(const char *file, const char *regex)
str += strlen(str) + 1;
/* len is the size of allocated buffer and we don't
want call regexec BUFSIZE times. find next str */
while (*str == '\0' && str < line + len)
while (str < line + len && *str == '\0')
str++;
} while (str < line + len);
}

View File

@@ -39,7 +39,7 @@
# include <sys/statvfs.h>
# define statfs statvfs
# define F_FLAGS f_flag
#elif defined (__linux__)
#elif defined (__linux__) || defined (__GLIBC__)
# include <mntent.h>
#endif
@@ -265,7 +265,7 @@ find_mounts(struct args *args)
return list;
}
#elif defined (__linux__)
#elif defined (__linux__) || defined (__GLIBC__)
static struct mntent *
getmntfile(const char *file)
{

View File

@@ -44,7 +44,7 @@
#include <time.h>
#include <unistd.h>
#ifdef __linux__
#if defined(__linux__) || defined(__GLIBC__)
# include <pty.h>
#elif defined(__NetBSD__) || defined(__OpenBSD__)
# include <util.h>

View File

@@ -52,7 +52,7 @@
#include <time.h>
#include <unistd.h>
#ifdef __linux__
#if defined(__linux__) || defined(__GLIBC__)
# include <pty.h>
#elif defined(__NetBSD__) || defined(__OpenBSD__)
# include <util.h>

View File

@@ -316,14 +316,12 @@ get_pid(const char *pidfile, bool quiet)
return -1;
if ((fp = fopen(pidfile, "r")) == NULL) {
if (!quiet)
eerror("%s: fopen `%s': %s", applet, pidfile, strerror(errno));
ewarnv("%s: fopen `%s': %s", applet, pidfile, strerror(errno));
return -1;
}
if (fscanf(fp, "%d", &pid) != 1) {
if (!quiet)
eerror("%s: no pid found in `%s'", applet, pidfile);
ewarnv("%s: no pid found in `%s'", applet, pidfile);
fclose(fp);
return -1;
}
@@ -461,7 +459,7 @@ run_stop_schedule(const char *exec, const char *const *argv,
{
if ((nrunning = do_stop(exec, argv,
pid, uid, 0, true, false,
true)) == 0)
test)) == 0)
return 0;
@@ -1088,7 +1086,7 @@ start_stop_daemon(int argc, char **argv)
pid = 0;
if (do_stop(exec, (const char * const *)margv, pid, uid,
0, true, false, true) > 0)
0, true, false, test) > 0)
eerrorx("%s: %s is already running", applet, exec);
if (test) {
@@ -1366,7 +1364,7 @@ start_stop_daemon(int argc, char **argv)
} else
pid = 0;
if (do_stop(exec, (const char *const *)margv,
pid, uid, 0, true, false, true) > 0)
pid, uid, 0, true, false, test) > 0)
alive = true;
}