aboutsummaryrefslogtreecommitdiff
path: root/dat.h
diff options
context:
space:
mode:
authorrodri <rgl@antares-labs.eu>2021-01-10 12:05:02 +0000
committerrodri <rgl@antares-labs.eu>2021-01-10 12:05:02 +0000
commit87d44606836a396209ffad68141e5c3a0986c788 (patch)
tree8b671d8a5a7a856c9a2fec577ae30b4083d1e51d /dat.h
parentad993c4293df8dc2e8fecc172efa82ea8d675def (diff)
downloadfilmoteca-87d44606836a396209ffad68141e5c3a0986c788.tar.gz
filmoteca-87d44606836a396209ffad68141e5c3a0986c788.tar.bz2
filmoteca-87d44606836a396209ffad68141e5c3a0986c788.zip
move from an inetd-dependent program to a standalone concurrent server.
Diffstat (limited to 'dat.h')
-rw-r--r--dat.h112
1 files changed, 112 insertions, 0 deletions
diff --git a/dat.h b/dat.h
new file mode 100644
index 0000000..06db25f
--- /dev/null
+++ b/dat.h
@@ -0,0 +1,112 @@
+#define nil NULL
+
+typedef unsigned char uchar;
+typedef long long vlong;
+typedef unsigned int uint;
+typedef unsigned long ulong;
+typedef unsigned long long uvlong;
+typedef uint32_t u32int;
+typedef struct sockaddr sockaddr;
+typedef struct sockaddr_in sockaddr_in;
+
+typedef struct Movie Movie;
+typedef struct Multipart Multipart;
+typedef struct Part Part;
+typedef struct Series Series;
+typedef struct Season Season;
+typedef struct Episode Episode;
+typedef struct Resource Resource;
+
+struct Movie {
+ char *release; /* release date */
+ int hassynopsis; /* is there a synopsis, */
+ int hascover; /* cover, */
+ int hasvideo; /* video, */
+ int hashistory; /* or history file? */
+ char **subs; /* list of subtitle languages */
+ int nsub;
+ char **dubs; /* list of revoicing languages */
+ int ndub;
+ char **extras; /* list of extra content */
+ int nextra;
+ char **remakes; /* list of remake years */
+ int nremake;
+};
+
+struct Multipart {
+ char *release; /* release date */
+ int hassynopsis; /* is there a synopsis, */
+ int hascover; /* cover, */
+ int hashistory; /* or history file? */
+ Part *part0; /* list of parts */
+ char **extras; /* list of extra content */
+ int nextra;
+ char **remakes; /* list of remake years */
+ int nremake;
+};
+
+struct Part {
+ int no; /* part number */
+ char **subs; /* list of subtitle languages */
+ int nsub;
+ char **dubs; /* list of revoicing languages */
+ int ndub;
+ Part *next;
+};
+
+struct Series {
+ int hassynopsis; /* is there a synopsis, */
+ int hascover; /* cover, */
+ int hashistory; /* or history file? */
+ Season *s; /* list of seasons */
+ char **extras; /* list of extra content */
+ int nextra;
+ char **remakes; /* list of remake years */
+ int nremake;
+};
+
+struct Season {
+ char *release; /* release date */
+ int no; /* season number */
+ Episode *pilot; /* list of episodes */
+ Season *next;
+};
+
+struct Episode {
+ int no; /* episode number */
+ int hasvideo; /* is there a video file? */
+ char **subs; /* list of subtitle languages */
+ int nsub;
+ char **dubs; /* list of revoicing languages */
+ int ndub;
+ Episode *next;
+};
+
+enum {
+ Rmovie,
+ Rmulti,
+ Rserie,
+ Runknown
+};
+struct Resource {
+ int type;
+ union {
+ Movie movie;
+ Multipart multi;
+ Series serie;
+ };
+};
+
+typedef struct Req Req;
+typedef struct HField HField;
+
+struct Req {
+ char *method, *target, *version;
+ int status;
+ HField *headers;
+};
+
+struct HField {
+ char *key, *value;
+ HField *next;
+};