aboutsummaryrefslogtreecommitdiffstats
path: root/recipes/nostromo/files
diff options
context:
space:
mode:
authorEric Bénard <eric@eukrea.com>2010-09-22 15:16:21 +0200
committerEric Bénard <eric@eukrea.com>2010-09-24 15:14:32 +0200
commit2218504b0413efaf2b1f643a802176eb803a9bf6 (patch)
treec67b05769078044ce576f6cd825aa47f83f6b75d /recipes/nostromo/files
parent410035824b7b562e53be9d8c0933482f69b0380f (diff)
downloadopenembedded-2218504b0413efaf2b1f643a802176eb803a9bf6.tar.gz
nostromo: add new recipe for this web server
* description taken from its website : nhttpd is a simple, fast and secure HTTP server. It runs as a single process, handling connections with select(2). For CGIs and directory listing it does fork(2). nhttpd has the minimum of HTTP/1.1 and CGI/1.1 implemented. Also supported are; chroot, setuid, basic authentication, SSL, IPv6, custom repsonses, aliases, and virtual hosts. To stop the server send a SIGTERM singal to the PID. The access log is written in standard CLF format. Signed-off-by: Eric Bénard <eric@eukrea.com>
Diffstat (limited to 'recipes/nostromo/files')
-rw-r--r--recipes/nostromo/files/cross.diff119
-rw-r--r--recipes/nostromo/files/nhttpd.conf55
-rw-r--r--recipes/nostromo/files/nostromo34
-rw-r--r--recipes/nostromo/files/volatiles2
4 files changed, 210 insertions, 0 deletions
diff --git a/recipes/nostromo/files/cross.diff b/recipes/nostromo/files/cross.diff
new file mode 100644
index 0000000000..712a889f75
--- /dev/null
+++ b/recipes/nostromo/files/cross.diff
@@ -0,0 +1,119 @@
+diff --git a/src/libbsd/GNUmakefile b/src/libbsd/GNUmakefile
+index e2d01a3..b380e1d 100644
+--- a/src/libbsd/GNUmakefile
++++ b/src/libbsd/GNUmakefile
+@@ -1,12 +1,12 @@
+-CCFLAGS = -O2 -pipe -Wall -Werror -Wstrict-prototypes -c
++CCFLAGS := -O2 -pipe -Wall -Werror -Wstrict-prototypes -c
+
+ libbsd.a: strlcpy.o strlcat.o
+- ar -r libbsd.a strlcpy.o strlcat.o
+- ranlib libbsd.a
++ $(AR) -r libbsd.a strlcpy.o strlcat.o
++ $(RANLIB) libbsd.a
+
+ strlcpy.o: strlcpy.c
+- cc ${CCFLAGS} strlcpy.c
++ $(CC) $(CCFLAGS) strlcpy.c
+ strlcat.o: strlcat.c
+- cc ${CCFLAGS} strlcat.c
++ $(CC) $(CCFLAGS) strlcat.c
+ clean:
+ rm -f libbsd.a *.o
+diff --git a/src/libmy/GNUmakefile b/src/libmy/GNUmakefile
+index ce90dd9..674ffe3 100644
+--- a/src/libmy/GNUmakefile
++++ b/src/libmy/GNUmakefile
+@@ -1,30 +1,30 @@
+-CCFLAGS = -O2 -Wall -Werror -Wstrict-prototypes -c
++CCFLAGS := -O2 -Wall -Werror -Wstrict-prototypes -c
+
+ libmy.a: strcutl.o strcutw.o strcuts.o strcuti.o strcutf.o flog.o flogd.o fparse.o strlower.o strb64d.o
+- ar -r libmy.a strcutl.o strcutw.o strcuts.o strcuti.o strcutf.o flog.o flogd.o fparse.o strlower.o strb64d.o
+- ranlib libmy.a
++ $(AR) -r libmy.a strcutl.o strcutw.o strcuts.o strcuti.o strcutf.o flog.o flogd.o fparse.o strlower.o strb64d.o
++ $(RANLIB) libmy.a
+
+ strcutl.o: strcutl.c
+- cc ${CCFLAGS} strcutl.c
++ $(CC) $(CCFLAGS) strcutl.c
+ strcutw.o: strcutw.c
+- cc ${CCFLAGS} strcutw.c
++ $(CC) $(CCFLAGS) strcutw.c
+ strcuts.o: strcuts.c
+- cc ${CCFLAGS} strcuts.c
++ $(CC) $(CCFLAGS) strcuts.c
+ strcuti.o: strcuti.c
+- cc ${CCFLAGS} strcuti.c
++ $(CC) $(CCFLAGS) strcuti.c
+ strcutf.o: strcutf.c
+- cc ${CCFLAGS} strcutf.c
++ $(CC) $(CCFLAGS) strcutf.c
+ strlower.o: strlower.c
+- cc ${CCFLAGS} strlower.c
++ $(CC) $(CCFLAGS) strlower.c
+ strb64d.o: strb64d.c
+- cc ${CCFLAGS} strb64d.c
++ $(CC) $(CCFLAGS) strb64d.c
+
+ flog.o: flog.c
+- cc ${CCFLAGS} flog.c
++ $(CC) $(CCFLAGS) flog.c
+ flogd.o: flogd.c
+- cc ${CCFLAGS} flogd.c
++ $(CC) $(CCFLAGS) flogd.c
+ fparse.o: fparse.c
+- cc ${CCFLAGS} fparse.c
++ $(CC) $(CCFLAGS) fparse.c
+
+ clean:
+ rm -f libmy.a *.o
+diff --git a/src/nhttpd/GNUmakefile b/src/nhttpd/GNUmakefile
+index c1887cf..9febc5b 100644
+--- a/src/nhttpd/GNUmakefile
++++ b/src/nhttpd/GNUmakefile
+@@ -1,18 +1,18 @@
+-CCFLAGS = -O2 -pipe -Wall -Werror -Wstrict-prototypes -c
++CCFLAGS := -O2 -pipe -Wall -Werror -Wstrict-prototypes -c
+
+ nhttpd: main.o http.o sys.o
+- cc -L../libmy -L../libbsd -o nhttpd main.o http.o sys.o -lmy -lbsd -lssl -lcrypt
+- strip nhttpd
++ $(CC) -L../libmy -L../libbsd -o nhttpd main.o http.o sys.o -lmy -lbsd -lssl -lcrypt
++ $(STRIP) nhttpd
+ nroff -Tascii -c -mandoc nhttpd.8 > nhttpd.cat8
+
+ main.o: main.c
+- cc ${CCFLAGS} main.c
++ $(CC) $(CCFLAGS) main.c
+
+ http.o: http.c
+- cc ${CCFLAGS} http.c
++ $(CC) $(CCFLAGS) http.c
+
+ sys.o: sys.c
+- cc ${CCFLAGS} sys.c
++ $(CC) $(CCFLAGS) sys.c
+
+ clean:
+ rm -f nhttpd nhttpd.cat8 *.o
+diff --git a/src/tools/GNUmakefile b/src/tools/GNUmakefile
+index 15bea61..a6e28c6 100644
+--- a/src/tools/GNUmakefile
++++ b/src/tools/GNUmakefile
+@@ -1,11 +1,11 @@
+-CCFLAGS = -O2 -pipe -Wall -Werror -Wstrict-prototypes -c
++CCFLAGS := -O2 -pipe -Wall -Werror -Wstrict-prototypes
+
+ crypt: crypt.o
+- cc -o crypt crypt.o -lcrypt
+- strip crypt
++ $(CC) $(CCFLAGS) -o crypt crypt.o -lcrypt
++ $(STRIP) crypt
+
+ crypt.o: crypt.c
+- cc ${CCFLAGS} crypt.c
++ $(CC) $(CCFLAGS) -c crypt.c
+
+ clean:
+ rm -f crypt *.o
diff --git a/recipes/nostromo/files/nhttpd.conf b/recipes/nostromo/files/nhttpd.conf
new file mode 100644
index 0000000000..6674bb696c
--- /dev/null
+++ b/recipes/nostromo/files/nhttpd.conf
@@ -0,0 +1,55 @@
+# MAIN [MANDATORY]
+
+servername localhost
+#servername www.nazgul.ch:8080
+serverlisten *
+#serverlisten 81.221.21.250 127.0.0.1 ::1
+serveradmin webmaster@localhost
+serverroot /var/nostromo
+servermimes /var/nostromo/conf/mimes
+docroot /var/nostromo/htdocs
+docindex index.html
+
+# LOGS [OPTIONAL]
+
+logpid /var/run/nostromo/nhttpd.pid
+#logaccess /var/log/nostromo/access_log
+
+# SETUID [RECOMMENDED]
+
+user www-data
+
+# BASIC AUTHENTICATION [OPTIONAL]
+
+#htaccess .htaccess
+#htpasswd /var/nostromo/conf/.htpasswd
+#htpasswd +bsdauth
+#htpasswd +bsdauthnossl
+
+# SSL [OPTIONAL]
+
+#sslport 443
+#sslcert /etc/ssl/server.crt
+#sslcertkey /etc/ssl/server.key
+
+# CUSTOM RESPONSES [OPTIONAL]
+#
+# The custom responses are searched in the corresponding document root.
+
+#custom_401 custom_401.html
+#custom_403 custom_403.html
+#custom_404 custom_404.html
+
+# ALIASES [OPTIONAL]
+
+/icons /var/nostromo/icons
+
+# VIRTUAL HOSTS [OPTIONAL]
+
+#www.rahel.ch /var/nostromo/htdocs/www.rahel.ch
+#www.rahel.ch:8080 /var/nostromo/htdocs/www.rahel.ch
+
+# HOMEDIRS [OPTIONAL]
+
+#homedirs /home
+#homedirs_public public_www
diff --git a/recipes/nostromo/files/nostromo b/recipes/nostromo/files/nostromo
new file mode 100644
index 0000000000..8a28868829
--- /dev/null
+++ b/recipes/nostromo/files/nostromo
@@ -0,0 +1,34 @@
+#!/bin/sh
+
+PATH=/sbin:/bin:/usr/sbin:/usr/bin
+DAEMON=nhttpd
+NAME=nhttpd
+DESC="Nostromo Web Server"
+OPTS="-c /etc/nhttpd.conf"
+
+case "$1" in
+ start)
+ echo -n "Starting $DESC: "
+ start-stop-daemon --start -x "$DAEMON" -- $OPTS
+ echo "$NAME."
+ ;;
+ stop)
+ echo -n "Stopping $DESC: "
+ start-stop-daemon --stop -x "$DAEMON"
+ echo "$NAME."
+ ;;
+ restart|force-reload)
+ echo -n "Restarting $DESC: "
+ start-stop-daemon --stop -x "$DAEMON"
+ sleep 1
+ start-stop-daemon --start -x "$DAEMON" -- $OPTS
+ echo "$NAME."
+ ;;
+ *)
+ N=/etc/init.d/$NAME
+ echo "Usage: $N {start|stop|restart|force-reload}" >&2
+ exit 1
+ ;;
+esac
+
+exit 0
diff --git a/recipes/nostromo/files/volatiles b/recipes/nostromo/files/volatiles
new file mode 100644
index 0000000000..40924960c6
--- /dev/null
+++ b/recipes/nostromo/files/volatiles
@@ -0,0 +1,2 @@
+d www-data www-data 0775 /var/run/nostromo none
+d www-data www-data 0775 /var/log/nostromo none