Changeset 7 in Main for trunk


Ignore:
Timestamp:
Sep 13, 2024, 7:40:53 PM (2 months ago)
Author:
Nishi
Message:

recognizes listen/listenssl now

Location:
trunk/Server
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • trunk/Server/config.c

    r6 r7  
    44
    55#include <stdio.h>
     6#include <stdint.h>
    67#include <stdlib.h>
    78#include <string.h>
     
    1213struct tw_config config;
    1314
    14 void tw_config_init(void) {}
     15void tw_config_init(void) {
     16        int i;
     17        for(i = 0; i < MAX_PORTS + 1; i++) {
     18                config.ports[i] = -1;
     19        }
     20}
    1521
    1622int tw_config_read(const char* path) {
     
    6066                                                        vhost = NULL;
    6167                                                }
     68                                        } else if(cm_strcaseequ(r[0], "Listen") || cm_strcaseequ(r[0], "ListenSSL")) {
     69                                                for(i = 1; r[i] != NULL; i++) {
     70                                                        uint64_t port = atoi(r[i]);
     71                                                        cm_log("Config", "Going to listen at port %d%s", (int)port, cm_strcaseequ(r[0], "ListenSSL") ? " with SSL" : "");
     72                                                        if(cm_strcaseequ(r[0], "ListenSSL")) port |= (1ULL << 32);
     73                                                        int j;
     74                                                        for(j = 0; config.ports[j] != -1; j++)
     75                                                                ;
     76                                                        config.ports[j] = port;
     77                                                }
    6278                                        } else {
    6379                                                if(r[0] != NULL) {
  • trunk/Server/tw_config.h

    r6 r7  
    44#define __TW_CONFIG_H__
    55
     6#include <stdint.h>
     7
     8/* I don't think you would listen to 1024 ports */
     9#define MAX_PORTS 1024
     10
    611struct tw_config_entry {};
    712
    813struct tw_config {
     14        uint64_t ports[MAX_PORTS + 1]; /* If port & (1 << 32) is non-zero, it is SSL */
    915        struct tw_config_entry root;
    1016};
Note: See TracChangeset for help on using the changeset viewer.