Menu

Tree [e69ad6] master /
 History

HTTPS access


File Date Author Commit
 .devcontainer 2024-07-15 Bob Tanner Bob Tanner [75e72d] feat: Add development container setup with Dock...
 .github 2025-02-20 Bob Tanner Bob Tanner [e78ab5] Refactor DevContainer configuration and Docker ...
 docker 2024-07-15 Bob Tanner Bob Tanner [e69ad6] feat: Add development container setup with Dock...
 html 2024-07-15 Bob Tanner Bob Tanner [e69ad6] feat: Add development container setup with Dock...
 scripts 2024-07-23 Bob Tanner Bob Tanner [94cd8b] Refactor SQL table definitions and update Docke...
 .dockerignore 2024-07-21 Bob Tanner Bob Tanner [4013f2] Add Docker Compose, Docker ignore file, GitHub ...
 .env.sample 2025-02-20 Bob Tanner Bob Tanner [d00d9a] Refactor DevContainer configuration and Docker ...
 .gitignore 2024-07-12 Bob Tanner Bob Tanner [ced38a] Closes https://sourceforge.net/p/crossfire/bugs...
 .pre-commit-config.yaml 2024-07-15 Bob Tanner Bob Tanner [700d47] feat: Add development container setup with Dock...
 .yamllint 2025-02-20 Bob Tanner Bob Tanner [d00d9a] Refactor DevContainer configuration and Docker ...
 CONTRIBUTING.md 2024-07-19 Rick Tanner Rick Tanner [418275] Layout and formatting updates to the CONTRIBUTI...
 COPYING 2024-07-13 Bob Tanner Bob Tanner [b70509] Refactor: Remove extraneous control characters ...
 INSTALL 2024-07-15 Bob Tanner Bob Tanner [286cb7] feat: Add development container setup with Dock...
 Makefile 2025-02-21 Bob Tanner Bob Tanner [e420e3] Refactor Devcontainer and Docker Setup
 README 2024-07-23 Rick Tanner Rick Tanner [37917e] Issue #3: Add a notice about resetting the logi...
 TECHNICAL 2024-07-13 Bob Tanner Bob Tanner [1afe51] Refactor: Remove extraneous control characters ...
 docker-compose.override.yml.example 2024-07-23 Bob Tanner Bob Tanner [1aca49] Update .gitignore, add docker-compose.override....
 docker-compose.yml 2025-02-23 Bob Tanner Bob Tanner [c20ff1] It is KEY_PATH

Read Me

If your looking on how to set up and use these scripts, see the INSTALL
file.

This directory contains the code for the metaserver.  Since the metaserver
will almost certainly run on a system different from either the server or
client, it makes sense for it to be its own directory in order to make updates
easy.

The metaserver is a php + mysql set of scripts.  Reasons for using php +
mysql:

1) These are quite common utilities, and many ISPs or other hosting services
will be able to run these (compared to say a standalone perl script)

2) By being run from a web server, this effectively gives us multithreading -
the metaserver update script can now do operations that may take a while (dns
lookups) which can not be done in a single threaded standalone script.

3) mysql takes care of file locking for us (basically don't need it).  It also
lets us do quick searches, dumps, etc, without needing to rely on other
external programs (grep, sort, etc).  While mysql is used in the initial
version, the code is designed to make it easy to support other SQL compatible
databases.

4) I'm quite familiar with php + mysql, so writing and testing it is much
easier with those tools than some other combination.

Brief description of the files:

common.php: some common routines/values common to all the scripts.
meta_client.php: Script that provides the data to the client in easy to
  parse form.
meta_html.php: Script that produces HTML table for viewing in a browser.
meta_update.php: Script that the server uses (via HTTP_POST) to update
  its information.
mysql_db.php: File that provides wrapper functions around the mysql
  calls.

CRITICAL: It is highly recommend to use a unique and complex password for the MySQL database
once the initial setup and testing is completed!

COPYRIGHT:

    Copyright (C) 2007 Mark Wedel & Crossfire Development Team

    This program is free software; you can redistribute it and/or modify
    it under the terms of the GNU General Public License as published by
    the Free Software Foundation; either version 2 of the License, or
    (at your option) any later version.

    This program is distributed in the hope that it will be useful,
    but WITHOUT ANY WARRANTY; without even the implied warranty of
    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
    GNU General Public License for more details.

    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
    Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.

    The author can be reached via e-mail to crossfire-devel@real-time.com
Want the latest updates on software, tech news, and AI?
Get latest updates about software, tech news, and AI from SourceForge directly in your inbox once a month.