Skip to content
Snippets Groups Projects

Compare revisions

Changes are shown as if the source revision was being merged into the target revision. Learn more about comparing revisions.

Source

Select target project
No results found

Target

Select target project
  • fabiao/cookbook
  • redox-os/cookbook
  • stratact/cookbook
  • carrot93/cookbook
  • microcolonel/cookbook
  • feliwir/cookbook
  • xTibor/cookbook
  • jD91mZM2/cookbook
  • mpajkowski/cookbook
  • rw_van/cookbook
  • athei/cookbook
  • kblobr/cookbook
  • VitalyAnkh/cookbook
  • sajattack/cookbook
  • sainath14/cookbook
  • ackxolotl/cookbook
  • AdminXVII/cookbook
  • coolreader18/cookbook
  • deepaksirone/cookbook
  • smckay/cookbook
  • 4lDO2/cookbook
  • tomasritter/cookbook
  • alfredoyang/cookbook
  • samuela/cookbook
  • andrewdavidmackenzie/cookbook
  • uuuvn/cookbook
  • josh_williams/cookbook
  • bjorn3/cookbook
  • ids1024/cookbook
  • Chocimier/cookbook
  • bpisch/cookbook
  • willnode/cookbook
  • grnmeira/cookbook
  • andrey.turkin/cookbook
  • cameronbraid/cookbook
  • kamirr/cookbook
  • freewilll/cookbook
  • kivimango/cookbook
  • rukai/cookbook
  • mattmadeofpasta/cookbook
  • jordan_mccallum/cookbook
  • dahc/cookbook
  • Forest0923/cookbook
  • LLeny/cookbook
  • doriancodes/cookbook
  • ashton/cookbook
  • gmacd/cookbook
  • mojo/cookbook
  • wt/cookbook
  • red15/cookbook
  • hasheddan/cookbook
  • dimymark/cookbook
  • andypython/cookbook
  • enygmator/cookbook
  • Ivan/cookbook
  • argslc/cookbook
  • adi-g15/cookbook
  • tfinnegan937/cookbook
  • raffaeleragni/cookbook
  • Lekkit/cookbook
  • bitstr0m/cookbook
  • josh/cookbook
  • zhaozhao/cookbook
  • blueskyson/cookbook
  • Xunjin/cookbook
  • StaringAtEditor/cookbook
66 results
Show changes
Commits on Source (21)
Showing
with 859 additions and 16 deletions
#TODO make apr work
[source]
tar = "https://dlcdn.apache.org//apr/apr-util-1.6.3.tar.bz2"
tar = "https://archive.apache.org/dist/apr/apr-util-1.6.0.tar.bz2"
patches = [
"redox.patch",
]
[build]
template = "custom"
dependencies = [
"apr",
"expat",
]
script = """
COOKBOOK_CONFIGURE_FLAGS+=(
--with-apr
--with-apr="${COOKBOOK_SYSROOT}"
)
cookbook_configure
export CFLAGS="-I${COOKBOOK_SYSROOT}/include/ -I${COOKBOOK_SYSROOT}/include/apr-1 "
ls ${COOKBOOK_SYSROOT}/include/
export CFLAGS_="${CFLAGS}"
cd ${COOKBOOK_SOURCE}
autoreconf -fi
"${COOKBOOK_CONFIGURE}" "${COOKBOOK_CONFIGURE_FLAGS[@]}"
sed -i build/rules.mk -e "s;\\(apr_builddir=\\)\\(.*\\);\\1${COOKBOOK_SYSROOT}\\2;" \\
-e "s;--mode=link;& --tag=CC;g" -e "s;--mode=compile;& --tag=CC -v;g" \\
sed -i build/rules.mk -e "/apr_builders=/s;apr_builders=;apr_builders=${COOKBOOK_SYSROOT};"
sed -i build/rules.mk -e "/^CFLAGS=/s;=.*;=${CFLAGS_};"
"${COOKBOOK_MAKE}" -j "${COOKBOOK_MAKE_JOBS}"
"${COOKBOOK_MAKE}" install DESTDIR="${COOKBOOK_STAGE}"
"""
diff --git a/apu-config.in b/apu-config.in
index 82109e5..2d005c9 100644
--- a/apu-config.in
+++ b/apu-config.in
@@ -140,12 +140,12 @@ while test $# -gt 0; do
;;
--includes)
if test "$location" = "installed"; then
- flags="$flags -I$includedir $INCLUDES"
+ flags="$flags $INCLUDES"
elif test "$location" = "source"; then
- flags="$flags -I$APU_SOURCE_DIR/include $INCLUDES"
+ flags="$flags $INCLUDES"
else
# this is for VPATH builds
- flags="$flags -I$APU_BUILD_DIR/include -I$APU_SOURCE_DIR/include $INCLUDES"
+ flags="$flags $INCLUDES"
fi
;;
--ldflags)
@@ -162,9 +162,9 @@ while test $# -gt 0; do
--link-ld)
if test "$location" = "installed"; then
### avoid using -L if libdir is a "standard" location like /usr/lib
- flags="$flags -L$libdir -l$APRUTIL_LIBNAME"
+ flags="$flags -l$APRUTIL_LIBNAME"
else
- flags="$flags -L$APU_BUILD_DIR -l$APRUTIL_LIBNAME"
+ flags="$flags -l$APRUTIL_LIBNAME"
fi
;;
--link-libtool)
@@ -178,7 +178,7 @@ while test $# -gt 0; do
### avoid using -L if libdir is a "standard" location like /usr/lib
# Since the user is specifying they are linking with libtool, we
# *know* that -R will be recognized by libtool.
- flags="$flags -L$libdir -R$libdir -l$APRUTIL_LIBNAME"
+ flags="$flags -l$APRUTIL_LIBNAME"
else
flags="$flags $LA_FILE"
fi
#TODO compilation error
[source]
tar = "https://dlcdn.apache.org//apr/apr-1.7.4.tar.bz2"
patches = ["redox.patch"]
[build]
template = "configure"
template = "custom"
script = """
COOKBOOK_CONFIGURE_FLAGS+=(
ac_cv_file__dev_zero=yes
ac_cv_working_getaddrinfo=no
apr_cv_process_shared_works=yes
apr_cv_mutex_robust_shared=yes
apr_cv_tcp_nodelay_with_cork=no
)
cookbook_configure
"""
diff --git a/apr-config.in b/apr-config.in
index 626d3b0..b79d471 100644
--- a/apr-config.in
+++ b/apr-config.in
@@ -180,14 +180,14 @@ while test $# -gt 0; do
;;
--includes)
if test "$location" = "installed"; then
- flags="$flags -I$includedir $EXTRA_INCLUDES"
+ flags="$flags $EXTRA_INCLUDES"
elif test "$location" = "crosscompile"; then
- flags="$flags -I$APR_TARGET_DIR/$includedir $EXTRA_INCLUDES"
+ flags="$flags $EXTRA_INCLUDES"
elif test "$location" = "source"; then
- flags="$flags -I$APR_SOURCE_DIR/include $EXTRA_INCLUDES"
+ flags="$flags $EXTRA_INCLUDES"
else
# this is for VPATH builds
- flags="$flags -I$APR_BUILD_DIR/include -I$APR_SOURCE_DIR/include $EXTRA_INCLUDES"
+ flags="$flags $EXTRA_INCLUDES"
fi
;;
--srcdir)
@@ -214,12 +214,12 @@ while test $# -gt 0; do
--link-ld)
if test "$location" = "installed"; then
### avoid using -L if libdir is a "standard" location like /usr/lib
- flags="$flags -L$libdir -l${APR_LIBNAME}"
+ flags="$flags -l${APR_LIBNAME}"
elif test "$location" = "crosscompile"; then
- flags="$flags -L$APR_TARGET_DIR/$libdir -l${APR_LIBNAME}"
+ flags="$flags -l${APR_LIBNAME}"
else
### this surely can't work since the library is in .libs?
- flags="$flags -L$APR_BUILD_DIR -l${APR_LIBNAME}"
+ flags="$flags -l${APR_LIBNAME}"
fi
;;
--link-libtool)
@@ -233,9 +233,9 @@ while test $# -gt 0; do
### avoid using -L if libdir is a "standard" location like /usr/lib
# Since the user is specifying they are linking with libtool, we
# *know* that -R will be recognized by libtool.
- flags="$flags -L$libdir -R$libdir -l${APR_LIBNAME}"
+ flags="$flags -l${APR_LIBNAME}"
elif test "$location" = "crosscompile"; then
- flags="$flags -L${APR_TARGET_DIR}/$libdir -l${APR_LIBNAME}"
+ flags="$flags -l${APR_LIBNAME}"
else
flags="$flags $LA_FILE"
fi
diff --git a/file_io/unix/open.c b/file_io/unix/open.c
index 49eb727..7b28aba 100644
--- a/file_io/unix/open.c
+++ b/file_io/unix/open.c
@@ -101,12 +101,15 @@ APR_DECLARE(apr_status_t) apr_file_open(apr_file_t **new,
#endif
if ((flag & APR_FOPEN_READ) && (flag & APR_FOPEN_WRITE)) {
+ fprintf(stderr, "afo flag RDRW\n");
oflags = O_RDWR;
}
else if (flag & APR_FOPEN_READ) {
+ fprintf(stderr, "afo flag RDONLY\n");
oflags = O_RDONLY;
}
else if (flag & APR_FOPEN_WRITE) {
+ fprintf(stderr, "afo flag WRONLY\n");
oflags = O_WRONLY;
}
else {
@@ -114,8 +117,10 @@ APR_DECLARE(apr_status_t) apr_file_open(apr_file_t **new,
}
if (flag & APR_FOPEN_CREATE) {
+ fprintf(stderr, "afo flag CREAT\n");
oflags |= O_CREAT;
if (flag & APR_FOPEN_EXCL) {
+ fprintf(stderr, "afo flag EXCL\n");
oflags |= O_EXCL;
}
}
@@ -124,19 +129,23 @@ APR_DECLARE(apr_status_t) apr_file_open(apr_file_t **new,
}
if (flag & APR_FOPEN_APPEND) {
+ fprintf(stderr, "afo flag APPEND\n");
oflags |= O_APPEND;
}
if (flag & APR_FOPEN_TRUNCATE) {
+ fprintf(stderr, "afo flag TRUNC\n");
oflags |= O_TRUNC;
}
#ifdef O_BINARY
if (flag & APR_FOPEN_BINARY) {
+ fprintf(stderr, "afo flag BINARY\n");
oflags |= O_BINARY;
}
#endif
if (flag & APR_FOPEN_NONBLOCK) {
#ifdef O_NONBLOCK
+ fprintf(stderr, "afo flag NONBLOCK\n");
oflags |= O_NONBLOCK;
#else
return APR_ENOTIMPL;
@@ -147,14 +156,17 @@ APR_DECLARE(apr_status_t) apr_file_open(apr_file_t **new,
/* Introduced in Linux 2.6.23. Silently ignored on earlier Linux kernels.
*/
if (!(flag & APR_FOPEN_NOCLEANUP)) {
+ fprintf(stderr, "afo flag CLOEXEC\n");
oflags |= O_CLOEXEC;
}
#endif
#if APR_HAS_LARGE_FILES && defined(_LARGEFILE64_SOURCE)
+ fprintf(stderr, "afo flag LARGEFILE\n");
oflags |= O_LARGEFILE;
#elif defined(O_LARGEFILE)
if (flag & APR_FOPEN_LARGEFILE) {
+ fprintf(stderr, "afo flag LARGEFILE\n");
oflags |= O_LARGEFILE;
}
#endif
@@ -164,18 +176,22 @@ APR_DECLARE(apr_status_t) apr_file_open(apr_file_t **new,
rv = apr_thread_mutex_create(&thlock,
APR_THREAD_MUTEX_DEFAULT, pool);
if (rv) {
+ fprintf(stderr, "afo ret 1 %d\n", rv);
return rv;
}
}
#endif
if (perm == APR_OS_DEFAULT) {
+ fprintf(stderr, "open %d %s\n", oflags, fname);
fd = open(fname, oflags, 0666);
}
else {
+ fprintf(stderr, "open %s %d %d\n", fname, oflags, apr_unix_perms2mode(perm));
fd = open(fname, oflags, apr_unix_perms2mode(perm));
}
if (fd < 0) {
+ fprintf(stderr, "afo ret 2 %d\n", errno);
return errno;
}
if (!(flag & APR_FOPEN_NOCLEANUP)) {
@@ -188,12 +204,14 @@ APR_DECLARE(apr_status_t) apr_file_open(apr_file_t **new,
if ((flags = fcntl(fd, F_GETFD)) == -1) {
close(fd);
+ fprintf(stderr, "afo ret 3 %d\n", errno);
return errno;
}
if ((flags & FD_CLOEXEC) == 0) {
flags |= FD_CLOEXEC;
if (fcntl(fd, F_SETFD, flags) == -1) {
close(fd);
+ fprintf(stderr, "afo ret 4 %d\n", errno);
return errno;
}
}
diff --git a/network_io/unix/sockopt.c b/network_io/unix/sockopt.c
index 6194e9b..a903f91 100644
--- a/network_io/unix/sockopt.c
+++ b/network_io/unix/sockopt.c
@@ -372,7 +372,7 @@ apr_status_t apr_socket_opt_get(apr_socket_t *sock,
apr_status_t apr_socket_atmark(apr_socket_t *sock, int *atmark)
{
-#ifndef BEOS_R5
+#if !defined(BEOS_R5) && !defined(__redox__)
int oobmark;
if (ioctl(sock->socketdes, SIOCATMARK, (void*) &oobmark) < 0)
[source]
tar="https://ftp.gnu.org/gnu/gdbm/gdbm-1.23.tar.gz"
patches = [
"redox.patch",
]
[build]
template = "configure"
diff --git a/build-aux/config.sub b/build-aux/config.sub
index 7ffe373..e2368e0 100755
--- a/build-aux/config.sub
+++ b/build-aux/config.sub
@@ -1393,7 +1393,7 @@ case $os in
| -os2* | -vos* | -palmos* | -uclinux* | -nucleus* \
| -morphos* | -superux* | -rtmk* | -rtmk-nova* | -windiss* \
| -powermax* | -dnix* | -nx6 | -nx7 | -sei* | -dragonfly* \
- | -skyos* | -haiku* | -rdos* | -toppers* | -drops* | -es* | -tirtos*)
+ | -skyos* | -haiku* | -rdos* | -redox* | -toppers* | -drops* | -es* | -tirtos*)
# Remember, each alternative MUST END IN *, to match a version number.
;;
-qnx*)
diff --git a/tools/gdbmshell.c b/tools/gdbmshell.c
index 22c4938..bf75dc8 100644
--- a/tools/gdbmshell.c
+++ b/tools/gdbmshell.c
@@ -2890,16 +2890,6 @@ struct timing
struct timeval sys;
};
-void
-timing_start (struct timing *t)
-{
- struct rusage r;
- gettimeofday (&t->real, NULL);
- getrusage (RUSAGE_SELF, &r);
- t->user = r.ru_utime;
- t->sys = r.ru_stime;
-}
-
static inline struct timeval
timeval_sub (struct timeval a, struct timeval b)
{
@@ -2916,19 +2906,6 @@ timeval_sub (struct timeval a, struct timeval b)
return diff;
}
-void
-timing_stop (struct timing *t)
-{
- struct rusage r;
- struct timeval now;
-
- gettimeofday (&now, NULL);
- getrusage (RUSAGE_SELF, &r);
- t->real = timeval_sub (now, t->real);
- t->user = timeval_sub (r.ru_utime, t->user);
- t->sys = timeval_sub (r.ru_stime, t->sys);
-}
-
static int
argsprep (struct command *cmd, struct gdbmarglist *arglist,
struct command_param *param)
@@ -3047,22 +3024,12 @@ run_command (struct command *cmd, struct gdbmarglist *arglist)
else
cenv.fp = stdout;
- timing_start (&tm);
rc = cmd->handler (&param, &cenv);
- timing_stop (&tm);
if (cmd->end)
cmd->end (cenv.data);
else if (cenv.data)
free (cenv.data);
- if (variable_is_true ("timing"))
- {
- fprintf (cenv.fp, "[%s r=%lu.%06lu u=%lu.%06lu s=%lu.%06lu]\n",
- cmd->name,
- tm.real.tv_sec, tm.real.tv_usec,
- tm.user.tv_sec, tm.user.tv_usec,
- tm.sys.tv_sec, tm.sys.tv_usec);
- }
if (pagfp)
pclose (pagfp);
#TODO can't recognize Redox target
[source]
tar = "https://sourceforge.net/projects/libuuid/files/libuuid-1.0.3.tar.gz/download"
patches = [
"redox.patch"
]
[build]
template = "configure"
diff --git a/config.sub b/config.sub
index 52f04bc..4a352eb 100755
--- a/config.sub
+++ b/config.sub
@@ -1376,7 +1376,7 @@ case $os in
| -os2* | -vos* | -palmos* | -uclinux* | -nucleus* \
| -morphos* | -superux* | -rtmk* | -rtmk-nova* | -windiss* \
| -powermax* | -dnix* | -nx6 | -nx7 | -sei* | -dragonfly* \
- | -skyos* | -haiku* | -rdos* | -toppers* | -drops* | -es*)
+ | -skyos* | -haiku* | -rdos* | -redox* | -toppers* | -drops* | -es*)
# Remember, each alternative MUST END IN *, to match a version number.
;;
-qnx*)
diff --git a/randutils.c b/randutils.c
index 80893d3..a39168d 100644
--- a/randutils.c
+++ b/randutils.c
@@ -13,7 +13,7 @@
#include <string.h>
#include <sys/time.h>
-#include <sys/syscall.h>
+// #include <sys/syscall.h>
#include "randutils.h"
[source]
tar = "https://github.com/besser82/libxcrypt/releases/download/v4.4.36/libxcrypt-4.4.36.tar.xz"
[build]
template = "configure"
#apache-httpd
[source]
tar="https://dlcdn.apache.org/httpd/httpd-2.4.58.tar.bz2"
patches = [
"redox.patch",
]
[build]
dependencies = [
"apr",
"apr-util",
"curl",
"expat",
"gdbm",
"libuuid",
"libxcrypt",
"libxml2",
"openssl1",
"pcre",
"zlib",
]
template = "custom"
script = """
# cookbook_configure
export COOKBOOK_MAKE_JOBS=1
export CPPFLAGS="$CPPFLAGS -I${COOKBOOK_SYSROOT}/include/apr-1 -DDEBUG=1"
export LTFLAGS="$LTFLAGS -Wall"
COOKBOOK_CONFIGURE_FLAGS=(
--build=$(/usr/bin/cc -dumpmachine)
--host=${TARGET}
--with-apr=$COOKBOOK_SYSROOT
--with-apr-util=$COOKBOOK_SYSROOT
--enable-unixd=static
--enable-authz_core=static
--enable-authz_host=static
ac_cv_prog_PCRE_CONFIG=$COOKBOOK_SYSROOT/bin/pcre-config
ap_cv_void_ptr_lt_long=no
)
cd ${COOKBOOK_SOURCE}
sed -i build/rules.mk.in -e 's/--mode=compile/& --tag=CC/'
sed -i build/rules.mk.in -e 's/--mode=link/& --tag=CC/'
"${COOKBOOK_CONFIGURE}" "${COOKBOOK_CONFIGURE_FLAGS[@]}"
"${COOKBOOK_MAKE}" -j "${COOKBOOK_MAKE_JOBS}"
"${COOKBOOK_MAKE}" install DESTDIR="${COOKBOOK_STAGE}"
sed -s 's/^LoadModule /# &/' -i ${COOKBOOK_STAGE}/usr/local/apache2/conf/httpd.conf
sed -s 's/^User daemon/User user/' -i ${COOKBOOK_STAGE}/usr/local/apache2/conf/httpd.conf
sed -s 's/^Group daemon/Group #1000/' -i ${COOKBOOK_STAGE}/usr/local/apache2/conf/httpd.conf
touch ${COOKBOOK_STAGE}/usr/local/apache2/logs/keep_dir
"""
diff --git a/Makefile.in b/Makefile.in
index ebf7a16..296e661 100644
--- a/Makefile.in
+++ b/Makefile.in
@@ -1,5 +1,5 @@
-SUBDIRS = srclib os server modules support
+SUBDIRS = srclib os server modules
CLEAN_SUBDIRS = test
PROGRAM_NAME = $(progname)
@@ -7,9 +7,10 @@ PROGRAM_SOURCES = modules.c
PROGRAM_LDADD = buildmark.o $(HTTPD_LDFLAGS) $(PROGRAM_DEPENDENCIES) $(PCRE_LIBS) $(EXTRA_LIBS) $(AP_LIBS) $(LIBS)
PROGRAM_PRELINK = $(COMPILE) -c $(top_srcdir)/server/buildmark.c
PROGRAM_DEPENDENCIES = \
+ -lc \
+ $(MPM_LIB) \
server/libmain.la \
$(BUILTIN_LIBS) \
- $(MPM_LIB) \
os/$(OS_DIR)/libos.la
sbin_PROGRAMS = $(PROGRAM_NAME)
@@ -290,28 +291,7 @@ install-man:
cd $(DESTDIR)$(manualdir) && find . -name ".svn" -type d -print | xargs rm -rf 2>/dev/null || true; \
fi
-install-suexec: install-suexec-$(INSTALL_SUEXEC)
-
-install-suexec-binary:
- @if test -f $(builddir)/support/suexec; then \
- test -d $(DESTDIR)$(sbindir) || $(MKINSTALLDIRS) $(DESTDIR)$(sbindir); \
- $(INSTALL_PROGRAM) $(top_builddir)/support/suexec $(DESTDIR)$(sbindir); \
- fi
-
-install-suexec-setuid: install-suexec-binary
- @if test -f $(builddir)/support/suexec; then \
- chmod 4755 $(DESTDIR)$(sbindir)/suexec; \
- fi
-
-install-suexec-caps: install-suexec-binary
- @if test -f $(builddir)/support/suexec; then \
- setcap 'cap_setuid,cap_setgid+pe' $(DESTDIR)$(sbindir)/suexec; \
- fi
-
-suexec:
- cd support && $(MAKE) suexec
-
-x-local-distclean:
+-local-distclean:
@rm -rf autom4te.cache
# XXX: This looks awfully platform-specific [read: bad form and style]
diff --git a/configure b/configure
index 6eb60fd..46b490e 100755
--- a/configure
+++ b/configure
@@ -4998,7 +4998,7 @@ else
done
if test $apr_addto_duplicate = "0"; then
test "x$silent" != "xyes" && echo " adding \"$i\" to LDFLAGS"
- LDFLAGS="$LDFLAGS $i"
+ # LDFLAGS="$LDFLAGS $i"
fi
done
fi
@@ -5006,6 +5006,7 @@ else
APU_BINDIR=`$apu_config --bindir`
APU_INCLUDEDIR=`$apu_config --includedir`
APU_INCLUDES=`$apu_config --includes`
+ echo "$apu_config --includes" = "$APU_INCLUDES"
APU_VERSION=`$apu_config --version`
APU_CONFIG="$APU_BINDIR/apu-`echo ${APU_VERSION} | sed 's,\..*,,'`-config"
fi
@@ -6268,9 +6269,9 @@ $as_echo "$as_me: Using external PCRE library from $PCRE_CONFIG" >&6;}
if test "x$PCRE_LIBS" = "x"; then
test "x$silent" != "xyes" && echo " setting PCRE_LIBS to \"`$PCRE_CONFIG --libs8 2>/dev/null || $PCRE_CONFIG --libs`\""
- PCRE_LIBS="`$PCRE_CONFIG --libs8 2>/dev/null || $PCRE_CONFIG --libs`"
+ PCRE_LIBS="-lpcre"
else
- apr_addto_bugger="`$PCRE_CONFIG --libs8 2>/dev/null || $PCRE_CONFIG --libs`"
+ apr_addto_bugger="-lpcre"
for i in $apr_addto_bugger; do
apr_addto_duplicate="0"
for j in $PCRE_LIBS; do
@@ -40691,9 +40692,11 @@ fi
if test x${apu_found} != xobsolete; then
- AP_LIBS="$AP_LIBS `$apu_config --avoid-ldap --link-libtool --libs`"
+ # AP_LIBS="$AP_LIBS `$apu_config --avoid-ldap --link-libtool --libs`" -ldb-5.3
+ AP_LIBS="$AP_LIBS -laprutil-1 -lgdbm -lexpat"
fi
-AP_LIBS="$AP_LIBS `$apr_config --link-libtool --libs`"
+# AP_LIBS="$AP_LIBS `$apr_config --link-libtool --libs`"
+AP_LIBS="$AP_LIBS -lapr-1 -luuid -lrt -lcrypt -lpthread -ldl"
APACHE_VAR_SUBST="$APACHE_VAR_SUBST AP_LIBS"
diff --git a/os/unix/unixd.c b/os/unix/unixd.c
index 0245720..cd241d2 100644
--- a/os/unix/unixd.c
+++ b/os/unix/unixd.c
@@ -231,31 +231,6 @@ AP_DECLARE(apr_status_t) ap_unixd_set_proc_mutex_perms(apr_proc_mutex_t *pmutex)
apr_lockmech_e mech = proc_mutex_mech(pmutex);
switch(mech) {
-#if APR_HAS_SYSVSEM_SERIALIZE
- case APR_LOCK_SYSVSEM:
- {
- apr_os_proc_mutex_t ospmutex;
-#if !APR_HAVE_UNION_SEMUN
- union semun {
- long val;
- struct semid_ds *buf;
- unsigned short *array;
- };
-#endif
- union semun ick;
- struct semid_ds buf = { { 0 } };
-
- apr_os_proc_mutex_get(&ospmutex, pmutex);
- buf.sem_perm.uid = ap_unixd_config.user_id;
- buf.sem_perm.gid = ap_unixd_config.group_id;
- buf.sem_perm.mode = 0600;
- ick.buf = &buf;
- if (semctl(ospmutex.crossproc, 0, IPC_SET, ick) < 0) {
- return errno;
- }
- }
- break;
-#endif
#if APR_HAS_FLOCK_SERIALIZE
case APR_LOCK_FLOCK:
{
diff --git a/server/Makefile.in b/server/Makefile.in
index 8111877..0449553 100644
--- a/server/Makefile.in
+++ b/server/Makefile.in
@@ -1,5 +1,5 @@
-CLEAN_TARGETS = gen_test_char test_char.h \
+CLEAN_TARGETS = \
ApacheCoreOS2.def httpd.exp export_files \
exports.c export_vars.h
@@ -24,12 +24,6 @@ TARGETS = delete-exports $(LTLIBRARY_NAME) $(CORE_IMPLIB_FILE) export_vars.h htt
include $(top_builddir)/build/rules.mk
include $(top_srcdir)/build/library.mk
-gen_test_char_OBJECTS = gen_test_char.lo
-gen_test_char: $(gen_test_char_OBJECTS)
- $(LINK) $(EXTRA_LDFLAGS) $(gen_test_char_OBJECTS) $(EXTRA_LIBS)
-
-test_char.h: gen_test_char
- ./gen_test_char > test_char.h
util.lo: test_char.h
diff --git a/server/gen_test_char.c b/server/gen_test_char.c
deleted file mode 100644
index 248216b..0000000
--- a/server/gen_test_char.c
+++ /dev/null
@@ -1,192 +0,0 @@
-/* Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-#ifdef CROSS_COMPILE
-
-#include <ctype.h>
-#define apr_isalnum(c) (isalnum(((unsigned char)(c))))
-#define apr_isalpha(c) (isalpha(((unsigned char)(c))))
-#define apr_iscntrl(c) (iscntrl(((unsigned char)(c))))
-#define apr_isprint(c) (isprint(((unsigned char)(c))))
-#define APR_HAVE_STDIO_H 1
-#define APR_HAVE_STRING_H 1
-
-#else
-
-#include "apr.h"
-#include "apr_lib.h"
-
-#endif
-
-#if defined(WIN32) || defined(OS2)
-#define NEED_ENHANCED_ESCAPES
-#endif
-
-#if APR_HAVE_STDIO_H
-#include <stdio.h>
-#endif
-#if APR_HAVE_STRING_H
-#include <string.h>
-#endif
-
-/* A bunch of functions in util.c scan strings looking for certain characters.
- * To make that more efficient we encode a lookup table.
- */
-#define T_ESCAPE_SHELL_CMD (0x01)
-#define T_ESCAPE_PATH_SEGMENT (0x02)
-#define T_OS_ESCAPE_PATH (0x04)
-#define T_HTTP_TOKEN_STOP (0x08)
-#define T_ESCAPE_LOGITEM (0x10)
-#define T_ESCAPE_FORENSIC (0x20)
-#define T_ESCAPE_URLENCODED (0x40)
-#define T_HTTP_CTRLS (0x80)
-#define T_VCHAR_OBSTEXT (0x100)
-#define T_URI_UNRESERVED (0x200)
-
-int main(int argc, char *argv[])
-{
- unsigned c;
- unsigned short flags;
-
- printf("/* this file is automatically generated by gen_test_char, "
- "do not edit */\n"
- "#define T_ESCAPE_SHELL_CMD (%u)\n"
- "#define T_ESCAPE_PATH_SEGMENT (%u)\n"
- "#define T_OS_ESCAPE_PATH (%u)\n"
- "#define T_HTTP_TOKEN_STOP (%u)\n"
- "#define T_ESCAPE_LOGITEM (%u)\n"
- "#define T_ESCAPE_FORENSIC (%u)\n"
- "#define T_ESCAPE_URLENCODED (%u)\n"
- "#define T_HTTP_CTRLS (%u)\n"
- "#define T_VCHAR_OBSTEXT (%u)\n"
- "#define T_URI_UNRESERVED (%u)\n"
- "\n"
- "static const unsigned short test_char_table[256] = {",
- T_ESCAPE_SHELL_CMD,
- T_ESCAPE_PATH_SEGMENT,
- T_OS_ESCAPE_PATH,
- T_HTTP_TOKEN_STOP,
- T_ESCAPE_LOGITEM,
- T_ESCAPE_FORENSIC,
- T_ESCAPE_URLENCODED,
- T_HTTP_CTRLS,
- T_VCHAR_OBSTEXT,
- T_URI_UNRESERVED
- );
-
- for (c = 0; c < 256; ++c) {
- flags = 0;
- if (c % 8 == 0)
- printf("\n ");
-
- /* escape_shell_cmd */
-#ifdef NEED_ENHANCED_ESCAPES
- /* Win32/OS2 have many of the same vulnerable characters
- * as Unix sh, plus the carriage return and percent char.
- * The proper escaping of these characters varies from unix
- * since Win32/OS2 use carets or doubled-double quotes,
- * and neither lf nor cr can be escaped. We escape unix
- * specific as well, to assure that cross-compiled unix
- * applications behave similarly when invoked on win32/os2.
- *
- * Rem please keep in-sync with apr's list in win32/filesys.c
- */
- if (c && strchr("&;`'\"|*?~<>^()[]{}$\\\n\r%", c)) {
- flags |= T_ESCAPE_SHELL_CMD;
- }
-#else
- if (c && strchr("&;`'\"|*?~<>^()[]{}$\\\n", c)) {
- flags |= T_ESCAPE_SHELL_CMD;
- }
-#endif
-
- if (!apr_isalnum(c) && !strchr("$-_.+!*'(),:@&=~", c)) {
- flags |= T_ESCAPE_PATH_SEGMENT;
- }
-
- if (!apr_isalnum(c) && !strchr("$-_.+!*'(),:;@&=/~", c)) {
- flags |= T_OS_ESCAPE_PATH;
- }
-
- if (!apr_isalnum(c) && !strchr(".-*_ ", c)) {
- flags |= T_ESCAPE_URLENCODED;
- }
-
- /* Stop for any non-'token' character, including ctrls, obs-text,
- * and "tspecials" (RFC2068) a.k.a. "separators" (RFC2616), which
- * is easier to express as characters remaining in the ASCII token set
- */
- if (!c || !(apr_isalnum(c) || strchr("!#$%&'*+-.^_`|~", c))) {
- flags |= T_HTTP_TOKEN_STOP;
- }
-
- /* Catch CTRLs other than VCHAR, HT and SP, and obs-text (RFC7230 3.2)
- * This includes only the C0 plane, not C1 (which is obs-text itself.)
- * XXX: We should verify that all ASCII C0 ctrls/DEL corresponding to
- * the current EBCDIC translation are captured, and ASCII C1 ctrls
- * corresponding are all permitted (as they fall under obs-text rule)
- */
- if (!c || (apr_iscntrl(c) && c != '\t')) {
- flags |= T_HTTP_CTRLS;
- }
-
- /* From RFC3986, the specific sets of gen-delims, sub-delims (2.2),
- * and unreserved (2.3) that are possible somewhere within a URI.
- * Spec requires all others to be %XX encoded, including obs-text.
- */
- if (c && !apr_iscntrl(c) && c != ' ') {
- flags |= T_VCHAR_OBSTEXT;
- }
-
- /* For logging, escape all control characters,
- * double quotes (because they delimit the request in the log file)
- * backslashes (because we use backslash for escaping)
- * and 8-bit chars with the high bit set
- */
- if (c && (!apr_isprint(c) || c == '"' || c == '\\' || apr_iscntrl(c))) {
- flags |= T_ESCAPE_LOGITEM;
- }
-
- /* For forensic logging, escape all control characters, top bit set,
- * :, | (used as delimiters) and % (used for escaping).
- */
- if (!apr_isprint(c) || c == ':' || c == '|' || c == '%'
- || apr_iscntrl(c) || !c) {
- flags |= T_ESCAPE_FORENSIC;
- }
-
- /* Characters in the RFC 3986 "unreserved" set.
- * https://datatracker.ietf.org/doc/html/rfc3986#section-2.3 */
- if (c && (apr_isalnum(c) || strchr("-._~", c))) {
- flags |= T_URI_UNRESERVED;
- }
-
- printf("0x%03x%c", flags, (c < 255) ? ',' : ' ');
- }
-
- printf("\n};\n\n");
-
- printf(
- "/* we assume the folks using this ensure 0 <= c < 256... which means\n"
- " * you need a cast to (unsigned char) first, you can't just plug a\n"
- " * char in here and get it to work, because if char is signed then it\n"
- " * will first be sign extended.\n"
- " */\n"
- "#define TEST_CHAR(c, f) (test_char_table[(unsigned char)(c)] & (f))\n"
- );
-
- return 0;
-}
diff --git a/server/mpm_fdqueue.c b/server/mpm_fdqueue.c
index 3697ca7..9f9d36e 100644
--- a/server/mpm_fdqueue.c
+++ b/server/mpm_fdqueue.c
@@ -17,6 +17,7 @@
#include "mpm_fdqueue.h"
#if APR_HAS_THREADS
+#warning "apr_has_threads"
#include <apr_atomic.h>
@@ -531,4 +532,6 @@ apr_status_t ap_queue_term(fd_queue_t *queue)
return queue_interrupt(queue, 1, 1);
}
+#else
+#warning "no apr_has_threads"
#endif /* APR_HAS_THREADS */
diff --git a/server/test_char.h b/server/test_char.h
new file mode 100644
index 0000000..ebd7395
--- /dev/null
+++ b/server/test_char.h
@@ -0,0 +1,53 @@
+/* this file is automatically generated by gen_test_char, do not edit */
+#define T_ESCAPE_SHELL_CMD (1)
+#define T_ESCAPE_PATH_SEGMENT (2)
+#define T_OS_ESCAPE_PATH (4)
+#define T_HTTP_TOKEN_STOP (8)
+#define T_ESCAPE_LOGITEM (16)
+#define T_ESCAPE_FORENSIC (32)
+#define T_ESCAPE_URLENCODED (64)
+#define T_HTTP_CTRLS (128)
+#define T_VCHAR_OBSTEXT (256)
+#define T_URI_UNRESERVED (512)
+
+static const unsigned short test_char_table[256] = {
+ 0x0a8,0x0fe,0x0fe,0x0fe,0x0fe,0x0fe,0x0fe,0x0fe,
+ 0x0fe,0x07e,0x0ff,0x0fe,0x0fe,0x0fe,0x0fe,0x0fe,
+ 0x0fe,0x0fe,0x0fe,0x0fe,0x0fe,0x0fe,0x0fe,0x0fe,
+ 0x0fe,0x0fe,0x0fe,0x0fe,0x0fe,0x0fe,0x0fe,0x0fe,
+ 0x00e,0x140,0x15f,0x146,0x141,0x166,0x141,0x141,
+ 0x149,0x149,0x101,0x140,0x148,0x300,0x300,0x14a,
+ 0x300,0x300,0x300,0x300,0x300,0x300,0x300,0x300,
+ 0x300,0x300,0x168,0x14b,0x14f,0x148,0x14f,0x14f,
+ 0x148,0x300,0x300,0x300,0x300,0x300,0x300,0x300,
+ 0x300,0x300,0x300,0x300,0x300,0x300,0x300,0x300,
+ 0x300,0x300,0x300,0x300,0x300,0x300,0x300,0x300,
+ 0x300,0x300,0x300,0x14f,0x15f,0x14f,0x147,0x300,
+ 0x147,0x300,0x300,0x300,0x300,0x300,0x300,0x300,
+ 0x300,0x300,0x300,0x300,0x300,0x300,0x300,0x300,
+ 0x300,0x300,0x300,0x300,0x300,0x300,0x300,0x300,
+ 0x300,0x300,0x300,0x14f,0x167,0x14f,0x341,0x0fe,
+ 0x17e,0x17e,0x17e,0x17e,0x17e,0x17e,0x17e,0x17e,
+ 0x17e,0x17e,0x17e,0x17e,0x17e,0x17e,0x17e,0x17e,
+ 0x17e,0x17e,0x17e,0x17e,0x17e,0x17e,0x17e,0x17e,
+ 0x17e,0x17e,0x17e,0x17e,0x17e,0x17e,0x17e,0x17e,
+ 0x17e,0x17e,0x17e,0x17e,0x17e,0x17e,0x17e,0x17e,
+ 0x17e,0x17e,0x17e,0x17e,0x17e,0x17e,0x17e,0x17e,
+ 0x17e,0x17e,0x17e,0x17e,0x17e,0x17e,0x17e,0x17e,
+ 0x17e,0x17e,0x17e,0x17e,0x17e,0x17e,0x17e,0x17e,
+ 0x17e,0x17e,0x17e,0x17e,0x17e,0x17e,0x17e,0x17e,
+ 0x17e,0x17e,0x17e,0x17e,0x17e,0x17e,0x17e,0x17e,
+ 0x17e,0x17e,0x17e,0x17e,0x17e,0x17e,0x17e,0x17e,
+ 0x17e,0x17e,0x17e,0x17e,0x17e,0x17e,0x17e,0x17e,
+ 0x17e,0x17e,0x17e,0x17e,0x17e,0x17e,0x17e,0x17e,
+ 0x17e,0x17e,0x17e,0x17e,0x17e,0x17e,0x17e,0x17e,
+ 0x17e,0x17e,0x17e,0x17e,0x17e,0x17e,0x17e,0x17e,
+ 0x17e,0x17e,0x17e,0x17e,0x17e,0x17e,0x17e,0x17e
+};
+
+/* we assume the folks using this ensure 0 <= c < 256... which means
+ * you need a cast to (unsigned char) first, you can't just plug a
+ * char in here and get it to work, because if char is signed then it
+ * will first be sign extended.
+ */
+#define TEST_CHAR(c, f) (test_char_table[(unsigned char)(c)] & (f))
#TODO Not compiled or tested
#TODO compiled but not tested
[source]
git = "https://github.com/alemidev/scope-tui"
[build]
......
#TODO Not compiled or tested
#TODO rustc-serialize crate error
[source]
git = "https://github.com/saubuny/tuisic"
[build]
......
#TODO Not compiled or tested
#TODO port to Orbital
[source]
git = "https://github.com/Avarel/bvr"
[build]
......
#TODO Not compiled or tested
#TODO compiled but not tested
[source]
git = "https://github.com/matze/chromazone"
[build]
......
#TODO Not compiled or tested
#TODO port to Orbital
[source]
git = "https://github.com/xrelkd/clipcat"
[build]
......
#TODO Not compiled or tested
#TODO compiled but not tested
[source]
git = "https://github.com/TD-Sky/conceal"
[build]
......
#TODO Not compiled or tested
#TODO compiled but not tested
[source]
git = "https://github.com/ztroop/dead-ringer"
rev = "c35398134a1bc3c44c1ddf24749b4a7643306870"
......
#TODO Not compiled or tested
#TODO require rustc 1.75 or newer
[source]
git = "https://github.com/envio-cli/envio"
[build]
......
#TODO Not compiled or tested
#TODO compiled but not tested
[source]
git = "https://github.com/cristianoliveira/funzzy"
[build]
......