-

TLS/UDP-Fehler-/Statuscodes für Ethernet-FBs

Die folgenden Status- und Fehlercodes können am Ausgang STATUS der Ethernet-Funktionsbausteine TLS_*_2 and UDP_*_2 ausgegeben werden. Einige Fehlercodes gelten nur für bestimmte Funktionsbausteine.

Statuscodes (Ausgang ERROR = FALSE):

Statuscode (hex)Bedeutung
0x0000Situation normal (kein Fehler aufgetreten).
0x8000Der Socket versucht den Partner zu verbinden.
0x8001Der Server "horcht" auf Nachrichten von einem Client.
0x8002Der Server hat einen Client zurückgewiesen, da IP-Adresse und Portnummer nicht übereinstimmen.
0x8003Es konnten nicht alle Daten gesendet werden. Die restlichen Daten werden im nächsten Zyklus (in den nächsten Zyklen) gesendet.
0x8004Es wurden nicht alle Daten empfangen: Länge der empfangenen Daten < Länge der erwarteten Daten
0x8005Unzulässiger Versuch TLS zu stoppen. START_TLS wurde bei geöffnetem TLS-Socket (ACTIVE-Eingang = TRUE) von TRUE auf FALSE gesetzt. (Nur gültig für TLS_SOCKET_2.)

Fehlercodes (Ausgang ERROR = TRUE):

Fehlercode (hex)Bedeutung
0xC001Fehler beim Erzeugen des Sockets.
0xC002Die IP-Adresse besitzt ein ungültiges Format.
0xC100Unerwarteter Fehler beim Verbindungsaufbau eines Clients zum Server.
0xC101Unerwarteter Fehler beim Datenempfang.
0xC102Unerwarteter Fehler beim Senden.
0xC103Unerwarteter Fehler bei Bind-Operation.
0xC104Unerwarteter Fehler bei Listening-Operation ("Horchen").
0xC105Unerwarteter Fehler beim Akzeptieren eines Clients.
0xC150Die Parametrierung des Sender-/Empfänger-Bausteins ist nicht konsistent mit der des zugehörigen Socket-Funktionsbausteins. Dies trifft in folgenden Fällen zu:

  • Daten sollen mit dem Sender-/Empfänger-FB sicher übertragen werden (Eingänge SEND_SECURE und RECEIVE_SECURE sind beide TRUE), aber der Socket wurde noch nicht für die TLS-Kommunikation initialisiert (Eingang START_TLS des Socket-FB ist FALSE).
  • Daten sollen mit dem Sender-/Empfänger-FB nicht-sicher übertragen werden (Eingänge SEND_SECURE und RECEIVE_SECURE sind beide FALSE), aber der Socket wurde bereits für die TLS-Kommunikation initialisiert (Eingang START_TLS des FBs TLS_SOCKET ist TRUE).
0xC151Es ist ein Fehler bezüglich des Eingangs START_TLS des *SOCKET*-Funktionsbausteins aufgetreten. START_TLS wurde bei geöffnetem TLS-Socket (ACTIVE-Eingang = TRUE) von TRUE auf FALSE gesetzt. (Nur gültig für TLS_SOCKET.)
0xC201Fehler beim Erzeugen des Sockets. Der zugrunde liegende Socket-Provider enthält zu viele geöffnete Sockets.

TLS_SOCKET_2: Gleichzeitig können bis zu 64 Sockets aktiviert werden.
UDP_SOCKET_2: Gleichzeitig können bis zu 64 Sockets (insgesamt über alle Instanzen der drei FBs) aktiviert werden.
0xC202Die Operation eines nicht-sperrenden Sockets kann nicht sofort abgeschlossen werden.
0xC204Das Datagramm ist zu lang.
0xC205Eine Adresse darf in der Regel nur einmal verwendet werden.

Im Fall einer TLS-Verbindung kann dieser Fehlercode auch ausgegeben werden, wenn am ACTIVATE-Eingang eine steigende Flanke erkannt wird, obwohl ACTIVE und BUSY noch nicht beide FALSE sind (d.h., es wird eine neue Verbindung angefordert, obwohl der bisherige Socket noch nicht vollständig geschlossen ist). Der Fehler kann auch auftreten, nachdem die Steuerung in den STOP-Zustand und anschließend wieder nach RUN umgeschaltet wurde, da dadurch alle bestehenden Verbindungen beendet werden.

Dieser Fehler wird auch ausgegeben, wenn ein TLS-Server mehrere Clients abhören soll. Verwenden Sie die neuen FB-Generation TLS_*_2, um diesen Fehler zu vermeiden.
0xC206Die gewählte IP-Adresse ist in diesem Kontext nicht gültig.
0xC207Die Verbindung wurde durch das .NET Framework oder den zugrunde liegenden Socket-Provider abgebrochen.
0xC208Die Verbindung wurde durch die Gegenstelle (Remote Peer) zurückgesetzt.
0xC210Die Anwendung versuchte, Daten zu senden oder zu empfangen, während der Socket nicht verbunden ist.
0xC212Es ist ein interner Fehler aufgetreten.
Ein weiterer Grund kann sein, dass versucht wird, mit Hilfe des Bausteins UDP_SEND_2 UDP-Datagramme an die Broadcast-Adresse (255.255.255.255) zu senden.

Wenn der Fehler für den Baustein UDP_SEND_2 ausgegeben wird, stellen Sie sicher, dass das Gateway in Ihrer IP-Konfiguration auf einen gültigen Wert gesetzt ist (die Adresse 0.0.0.0 wird wie ein fehlendes Gateway behandelt). (Das Netzwerk muss kein Gerät mit der konfigurierten Gateway-Adresse enthalten.)
0xC213Der Remote Host weist eine Verbindung aktiv ab. Der Dienst ist auf dem Remote Host nicht verfügbar.
0xC214
  • Parameter wie CipherList, TrustStoreName und IdentityStoreName sind ungültig oder nicht vorhanden.
  • Es wurde eine ungültige Portnummer angegeben.
0xC224Netzwerk ist ausgefallen.
0xC225Netzwerk unerreichbar.
0xC226Netzwerk hat beim Rücksetzen die Verbindung abgebrochen.
0xC228Die Anforderung zum Senden oder Empfangen von Daten wurde nicht erlaubt, weil der Socket bereits geschlossen war.
0xC229Timeout beim Verbindungsaufbau oder der verbundene Host hat nicht geantwortet.
0xC22ADer Vorgang ist fehlgeschlagen, da der Remote Host nicht verfügbar ist.
0xC22BEs ist keine Netzwerkroute zum angegebenen Host vorhanden. Der Remote Host ist möglicherweise nicht verfügbar.
0xFFFFSSL-Fehler aufgetreten. Es handelt sich möglicherweise um einen Fehler bei der Authentifizierung, der durch falsche Datums- und Zeiteinstellungen auf der Steuerung verursacht wurde. Überprüfen Sie die Zertifikate.