Browse Source

fixed example. some more comments added

valenok 15 years ago
parent
commit
88a224d808
3 changed files with 15 additions and 9 deletions
  1. 13 8
      examples/chat.c
  2. 1 1
      mongoose.c
  3. 1 0
      mongoose.h

+ 13 - 8
examples/chat.c

@@ -350,19 +350,24 @@ static enum mg_error_t process_request(struct mg_connection *conn,
 }
 
 int main(void) {
-  struct mg_context	*ctx;
+  struct mg_context *ctx;
+  struct mg_config config;
 
   // Initialize random number generator. It will be used later on for
   // the session identifier creation.
   srand((unsigned) time(0));
 
-  // Start and setup Mongoose
-  ctx = mg_start();
-  mg_set_option(ctx, "root", web_root);
-  mg_set_option(ctx, "ssl_cert", ssl_certificate);  // Must be set before ports
-  mg_set_option(ctx, "ports", http_ports);
-  mg_set_option(ctx, "dir_list", "no");   // Disable directory listing
-  mg_set_callback(ctx, MG_EVENT_NEW_REQUEST, &process_request);
+  // Setup and start Mongoose
+  memset(&config, 0, sizeof(config));
+  config.document_root = web_root;
+  config.listening_ports = http_ports;
+  config.ssl_certificate = ssl_certificate;
+  config.index_files = "index.html";
+  config.new_request_handler = &process_request;
+  config.auth_domain = "";
+  config.num_threads = "5";
+  ctx = mg_start(&config);
+  assert(ctx != NULL);
 
   // Wait until enter is pressed, then exit
   printf("Chat server started on ports %s, press enter to quit.\n", http_ports);

+ 1 - 1
mongoose.c

@@ -4300,7 +4300,7 @@ mg_start(struct mg_config *config)
 
 	/*
 	 * NOTE(lsm): order is important here. SSL certificates must
-	 * be initialized before listening ports.
+	 * be initialized before listening ports. UID must be set last.
 	 */
 	if (set_ssl_option(ctx) == MG_ERROR ||
 	    set_ports_option(ctx) == MG_ERROR ||

+ 1 - 0
mongoose.h

@@ -121,6 +121,7 @@ struct mg_config {
  * This must be the first function called by the application.
  * It creates a serving thread, and returns a context structure that
  * can be used to stop the server.
+ * After calling mg_start(), configuration data must not be changed.
  */
 struct mg_context *mg_start(struct mg_config *);