Changeset 43 in Main for trunk/Server


Ignore:
Timestamp:
Sep 18, 2024, 6:19:03 PM (2 months ago)
Author:
Nishi
Message:

add NO_SSL

Location:
trunk/Server
Files:
1 added
6 edited

Legend:

Unmodified
Added
Removed
  • trunk/Server/Makefile

    r32 r43  
    66.SUFFIXES: .c .o
    77
    8 OBJS = version.o main.o config.o server.o ssl.o http.o module.o strptime.o
     8OBJS = version.o main.o config.o server.o http.o module.o strptime.o $(EXTOBJS)
    99
    1010all: tewi$(EXEC)
    1111
    1212tewi$(EXEC): $(OBJS) ../Common/common.a
    13         $(CC) $(LDFLAGS) -o $@ $(OBJS) -lssl -lcrypto $(LIBS) ../Common/common.a
     13        $(CC) $(LDFLAGS) -o $@ $(OBJS) $(EXTLIBS) $(LIBS) ../Common/common.a
    1414
    1515.c.o:
  • trunk/Server/http.c

    r23 r43  
    22
    33#define SOURCE
     4
     5#include "../config.h"
    46
    57#include "tw_http.h"
     
    6062                tv.tv_sec = 5;
    6163                tv.tv_usec = 0;
     64#ifndef NO_SSL
    6265                if(ssl == NULL || !SSL_has_pending(ssl)) {
     66#endif
    6367                        int n = select(FD_SETSIZE, &fds, NULL, NULL, &tv);
    6468                        if(n <= 0) {
     
    6771                                return -1;
    6872                        }
    69                 }
     73#ifndef NO_SSL
     74                }
     75#endif
    7076                int len = tw_read(ssl, sock, buffer, 512);
    7177                if(len <= 0) break;
  • trunk/Server/main.c

    r36 r43  
    22
    33#define SOURCE
     4
     5#include "../config.h"
    46
    57#include <stdio.h>
     
    810#include <signal.h>
    911
     12#ifndef NO_SSL
    1013#include <openssl/opensslv.h>
     14#endif
    1115
    1216#include <cm_log.h>
     
    2933                                if(!cm_do_log) {
    3034                                        cm_do_log = true;
     35#ifndef NO_SSL
    3136                                        cm_log("", "This is Tewi HTTPd, version %s, using %s", tw_get_version(), OPENSSL_VERSION_TEXT);
     37#else
     38                                        cm_log("", "This is Tewi HTTPd, version %s", tw_get_version());
     39#endif
    3240                                } else {
    3341                                        cm_do_log = true;
  • trunk/Server/server.c

    r33 r43  
    33#define SOURCE
    44
     5#include "../config.h"
     6
    57#include "tw_server.h"
    68
     9#ifndef NO_SSL
    710#include "tw_ssl.h"
     11#endif
     12
    813#include "tw_config.h"
    914#include "tw_http.h"
     
    1520#include <stdbool.h>
    1621#include <stdarg.h>
     22#include <stdio.h>
     23#include <stdlib.h>
    1724#include <sys/stat.h>
    1825#include <time.h>
     
    143150
    144151size_t tw_read(SSL* ssl, int s, void* data, size_t len) {
     152#ifndef NO_SSL
    145153        if(ssl == NULL) {
    146154                return recv(s, data, len, 0);
     
    148156                return SSL_read(ssl, data, len);
    149157        }
     158#else
     159        return recv(s, data, len, 0);
     160#endif
    150161}
    151162
    152163size_t tw_write(SSL* ssl, int s, void* data, size_t len) {
     164#ifndef NO_SSL
    153165        if(ssl == NULL) {
    154166                return send(s, data, len, 0);
     
    156168                return SSL_write(ssl, data, len);
    157169        }
     170#else
     171        return send(s, data, len, 0);
     172#endif
    158173}
    159174
     
    389404        char* name = config.hostname;
    390405
     406#ifndef NO_SSL
    391407        SSL_CTX* ctx = NULL;
    392408        SSL* s = NULL;
     
    399415                sslworks = true;
    400416        }
     417#else
     418        void* s = NULL;
     419#endif
    401420        struct tw_http_request req;
    402421        struct tw_http_response res;
     
    661680        }
    662681cleanup:
     682#ifndef NO_SSL
    663683        if(sslworks) {
    664684                SSL_shutdown(s);
     
    666686        SSL_free(s);
    667687        close_socket(sock);
     688#endif
    668689#ifdef __MINGW32__
    669690        _endthreadex(0);
    670691#endif
     692        ;
    671693}
    672694
  • trunk/Server/tw_http.h

    r32 r43  
    55
    66#include <stdbool.h>
     7
     8#include "../config.h"
    79
    810struct tw_http_request {
     
    2224
    2325#ifdef SOURCE
     26#ifndef NO_SSL
    2427#include <openssl/ssl.h>
     28#endif
    2529void tw_free_request(struct tw_http_request* req);
     30#ifndef NO_SSL
    2631int tw_http_parse(SSL* ssl, int sock, struct tw_http_request* req);
     32#else
     33int tw_http_parse(void* ssl, int sock, struct tw_http_request* req);
     34#endif
    2735#endif
    2836
  • trunk/Server/tw_server.h

    r16 r43  
    44#define __TW_SERVER_H__
    55
     6#include "../config.h"
     7
     8#include <stddef.h>
     9
     10#ifndef NO_SSL
    611#include <openssl/ssl.h>
     12#endif
    713
    814int tw_server_init(void);
    915void tw_server_loop(void);
     16
     17#ifndef NO_SSL
    1018size_t tw_read(SSL* ssl, int s, void* data, size_t len);
    1119size_t tw_write(SSL* ssl, int s, void* data, size_t len);
     20#else
     21size_t tw_read(void* ssl, int s, void* data, size_t len);
     22size_t tw_write(void* ssl, int s, void* data, size_t len);
     23#endif
    1224
    1325#endif
Note: See TracChangeset for help on using the changeset viewer.