summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--mbbsd/mbbsd.c4
-rw-r--r--sample/pttbbs.conf3
2 files changed, 7 insertions, 0 deletions
diff --git a/mbbsd/mbbsd.c b/mbbsd/mbbsd.c
index 42bb48a2..028a91b6 100644
--- a/mbbsd/mbbsd.c
+++ b/mbbsd/mbbsd.c
@@ -19,6 +19,10 @@ static int use_shell_login_mode = 0;
static struct sockaddr_in xsin;
+#ifdef USE_RFORK
+#define fork() rfork(RFFDG | RFPROC | RFNOWAIT)
+#endif
+
/* set signal handler, which won't be reset once signal comes */
static void
signal_restart(int signum, void (*handler) (int))
diff --git a/sample/pttbbs.conf b/sample/pttbbs.conf
index 20b6b30b..ff006f90 100644
--- a/sample/pttbbs.conf
+++ b/sample/pttbbs.conf
@@ -116,6 +116,9 @@
/* 若定義, 在使用者註冊之前, 會先顯示出該檔案, 經使用者確認後才能註冊 */
//#define HAVE_USERAGREEMENT "etc/UserAgreement"
+/* 使用 rfork()取代 fork() . 目前只在 FreeBSD上有效 */
+//#define USE_RFORK
+
/* 前進站畫面 */
#define INSCREEN \
"前進站畫面 (請至 pttbbs.conf 修改您的前進站畫面)"