diff --git a/src/HomeSpan.cpp b/src/HomeSpan.cpp index 637aec2..c9463a2 100644 --- a/src/HomeSpan.cpp +++ b/src/HomeSpan.cpp @@ -398,6 +398,16 @@ void Span::checkConnect(){ else sprintf(hostName,"%s%s",hostNameBase,hostNameSuffix); + char d[strlen(hostName)+1]; + sscanf(hostName,"%[A-Za-z0-9-]",d); + + if(strlen(hostName)>255|| hostName[0]=='-' || hostName[strlen(hostName)-1]=='-' || strlen(hostName)!=strlen(d)){ + Serial.printf("\n*** Error: Can't start MDNS due to invalid hostname '%s'.\n",hostName); + Serial.print("*** Hostname must consist of 255 or less alphanumeric characters or a hyphen, except that the hyphen cannot be the first or last character.\n"); + Serial.print("*** PROGRAM HALTED!\n\n"); + while(1); + } + Serial.print("\nStarting MDNS...\n\n"); Serial.print("HostName: "); Serial.print(hostName); diff --git a/src/src.ino b/src/src.ino index c2ed9eb..eff4b47 100644 --- a/src/src.ino +++ b/src/src.ino @@ -10,15 +10,15 @@ void setup() { homeSpan.setLogLevel(1); -// homeSpan.setHostNameSuffix(""); + homeSpan.setHostNameSuffix("-lamp1"); homeSpan.setPortNum(1201); // homeSpan.setMaxConnections(6); // homeSpan.setQRID("One1"); homeSpan.enableOTA(); - homeSpan.setSketchVersion("Test 1.3.0"); + homeSpan.setSketchVersion("Test 1.3.1"); homeSpan.setWifiCallback(wifiEstablished); - homeSpan.begin(Category::Lighting,"HomeSpan Lamp Server","homespanlamp"); + homeSpan.begin(Category::Lighting,"HomeSpan Lamp Server","homespan"); new SpanAccessory(); // Begin by creating a new Accessory using SpanAccessory(), which takes no arguments