Bezeichnung
CreateServer -- öffnet einen neuen Server (V5.0)
Übersicht
[id] = CreateServer(id[, port, ip$, backlog, protocol])
Beschreibung
Mit diesem Befehl kann ein neuer Server eingerichtet werden, der bereit ist, eingehende Verbindungen auf dem lokalen Host aufzunehmen. Über das optionale Argument port kann festgelegt werden, auf welchem Port der Server geöffnet werden soll. Wenn Sie dieses Argument nicht angeben, wird CreateServer() automatisch einen freien Port auswählen und Sie können später den Befehl GetLocalPort() verwenden, um die Portnummer des Servers herauszufinden. Im ersten Argument id müssen Sie eine Kennung übergeben, die benötigt wird, um später auf diesen Server zu verweisen. Alternativ können Sie Nil in id übergeben. In diesem Fall wird CreateServer() automatisch eine ID auswählen und ihnen zurückgeben.

Mit dem optionalen Argument ip$ kann eine lokale IP-Adresse angegeben werden, an die der Server gebunden sein soll. Der Standardwert ist "*". Dies bedeutet, dass der Server Verbindungen vom gesamten Netzwerk akzeptiert. Sie können auch "127.0.0.1" (oder "::1" in IPv6) angeben, um nur Verbindungen vom lokalen Host zuzulassen. Beachten Sie, dass das Übergeben von "*", das auch die Standardeinstellung ist, bei einigen Konfigurationen die Firewall auslösen kann.

Das optionale Argument backlog kann verwendet werden, um die maximale Anzahl von Clientverbindungen anzugeben, die der Warteschlange hinzugefügt werden können. Der Standardwert ist 32.

Ab Hollywood 8.0 gibt es optional ein neues Argument protocol, mit dem Sie das Internetprotokoll angeben können, das beim Erstellen des Servers verwendet werden soll. Dies kann eine der folgenden speziellen Konstanten sein:

#IPV4:
Verwendet die Internetprotokollversion 4 (IPv4). IPv4-Adressen sind auf 32 Bit beschränkt und werden unter Verwendung von vier durch drei Punkte getrennten Zahlen dargestellt, z.B. 127.0.0.1.

#IPV6:
Verwendet die Internetprotokollversion 6 (IPv6). IPv6-Adressen verwenden 128 Bits und werden durch acht Gruppen von vier Hexadezimalziffern dargestellt, z.B. 2001:0db8:85a3:0000:0000:8a2e:0370:7334. Beachten Sie, dass #IPV6 auf AmigaOS und kompatiblen Systemen derzeit nicht unterstützt wird.

#IPAUTO:
Lassen Sie das Host-Betriebssystem das zu verwendende Internetprotokoll bestimmen. Anschließend können Sie mit dem Befehl GetLocalProtocol() ermitteln, welches Internetprotokoll das Host-Betriebssystem für diesen Server ausgewählt hat. Siehe GetLocalProtocol für Details.

Das Argument protocol verwendet standardmäßig den Standardprotokolltyp, der mit SetNetworkProtocol() festgelegt wird. Standardmäßig ist dies aus historischen Gründen und aus Gründen der Portabilität #IPV4. @see{SetNetworkProtocol, SetNetworkProtocol}

Sobald der Server erfolgreich eingerichtet wurde, müssen Sie den Befehl InstallEventHandler() verwenden, um die Ereignisse OnConnect, OnDisconnect und OnReceiveData zu installieren. Diese Ereignisse informieren Sie, wenn ein neuer Client versucht, eine Verbindung zu Ihrem Server herzustellen oder wenn ein Client neue Daten (d.h. Befehle, die Sie behandeln müssen) an Ihren Server sendet.

Eingaben
id
Identifikator des neuen Server oder Nil für die automatische ID-Auswahl
port
optional: Port, auf dem dieser Server geöffnet oder 0 für die automatische Portwahl (voreingestellt ist 0)
ip$
optional: lokale IP-Adresse, an die der Server gebunden werden soll (Standardeinstellung ist "*")
backlog
optional: maximale Anzahl von Verbindungen, die in die Warteschlange gestellt werden können (Standardeinstellung ist 32)
protocol
optional: Zu verwendendes Internetprotokoll (mögliche Werte siehe oben); der Standardwert ist der mit SetNetworkProtocol() festgelegter Protokolltyp. (V8.0)
Rückgabewerte
id
optional: Identifikator des Servers; wird nur zurückgegeben werden, wenn Sie Nil als id angegeben haben (siehe oben)

Navigation zeigen