commit 5e0ca13aa84ce76aa96fb69a4ed91af158726cac
parent c16b42e7d7ddbef0dee316dd2cbf28e354a63061
Auteur: ldp <ldp@asteride.xyz>
Date: Tue, 9 Dec 2025 16:54:17 -0500
[chm] Créer un programme CGI
Diffstat:
4 fichiers modifiés, 34 insertions(+), 5 suppressions(-)
diff --git a/.gitignore b/.gitignore
@@ -1,3 +1,4 @@
*.o
*.core
depre
+depre_cgi
diff --git a/Makefile b/Makefile
@@ -17,11 +17,14 @@ LANG_MAN != ls "${DOS_MAN}"
.c.o:
${CC} ${CPPOPTS} ${COPTS} -c "$<"
-all: depre
+all: depre depre_cgi
depre: depre.o commun.o
${CC} ${COPTS} -o "$@" depre.o commun.o
+depre_cgi: depre_cgi.o commun.o
+ ${CC} ${COPTS} -static -o "$@" depre_cgi.o commun.o
+
inst_man:
for L in ${LANG_MAN} ; \
do \
@@ -37,4 +40,4 @@ uninstall:
rm -f ${BIN_DOS}/depre
net:
- rm -f depre *.o *.core
+ rm -f depre depre_cgi *.o *.core
diff --git a/depre.c b/depre.c
@@ -12,9 +12,6 @@
#include "commun.h"
-/* nombre de secondes entre le zéro Unix et zéro depre, par défaut */
-#define ZERO_DEF (11138 * 60 * 60 * 24 + 3600 * 4)
-
/* nombre de secondes dans une journée */
#define SEC_JOUR 86400
diff --git a/depre_cgi.c b/depre_cgi.c
@@ -0,0 +1,28 @@
+/* depre_cgi, afficher la date et l’heure sur le web selon la représentation
+ * hexadécimale du temps dêpre
+ * par ldp <ldp@asteride.xyz>
+ * Ce programme est distribué sous la licence libre GPLv3
+ */
+
+#include <stdio.h>
+#include <time.h>
+
+#include "commun.h"
+
+int
+main(void)
+{
+ unsigned jours, barres;
+ char *signe;
+
+ printf("Content-type: text/plain\n\n");
+
+ if (depre(ZERO_DEF, time(NULL), &jours, &barres) < 0)
+ signe = "-";
+ else
+ signe = "";
+
+ printf("%s%x.%x\n", signe, jours, barres);
+
+ return 0;
+}