When hiawatha is configured like this:
$ ./configure --disable-ssl
it doesn't compile:
hiawatha.c: In function ‘serve_client’:
hiawatha.c:861: error: ‘t_session’ has no member named ‘cause_of_301’
hiawatha.c:861: error: ‘location’ undeclared (first use in this function)
hiawatha.c:861: error: (Each undeclared identifier is reported only once
hiawatha.c:861: error: for each function it appears in.)
make[1]: *** [hiawatha-hiawatha.o] Error 1
in
send.c line 338:
if (session->cause_of_301 == location) {
session is of type
t_session *, which is defined in
session.h.
The
t_session structure has a
cause_of_301 member only if SSL is enabled:
#ifdef HAVE_SSL
SSL *ssl_data;
t_cause_of_301 cause_of_301;
#endif
and the
t_cause_of_301 enum is also only defined is SSL is enabled:
#ifdef HAVE_SSL
typedef enum { missing_slash, require_ssl, location } t_cause_of_301;
#endif
which is strange, because it could be a
301 redirect, which has nothing to do with SSL.
Any idea?