diff options
Diffstat (limited to 'libraries/Bridge')
| -rw-r--r-- | libraries/Bridge/YunServer.cpp | 7 | ||||
| -rw-r--r-- | libraries/Bridge/YunServer.h | 4 | 
2 files changed, 9 insertions, 2 deletions
| diff --git a/libraries/Bridge/YunServer.cpp b/libraries/Bridge/YunServer.cpp index c6d54e4..c0ed88c 100644 --- a/libraries/Bridge/YunServer.cpp +++ b/libraries/Bridge/YunServer.cpp @@ -19,7 +19,7 @@  #include <YunServer.h>  YunServer::YunServer(uint16_t _p, BridgeClass &_b) : -  bridge(_b), port(_p), listening(false) { +  bridge(_b), port(_p), listening(false), useLocalhost(false) {  }  void YunServer::begin() { @@ -29,7 +29,10 @@ void YunServer::begin() {      port & 0xFF    };    uint8_t res[1]; -  bridge.transfer(tmp, 3, (const uint8_t *)"0.0.0.0", 7, res, 1); +  String address = F("127.0.0.1"); +  if (!useLocalhost) +    address = F("0.0.0.0"); +  bridge.transfer(tmp, 3, (const uint8_t *)address.c_str(), address.length(), res, 1);    listening = (res[0] == 1);  } diff --git a/libraries/Bridge/YunServer.h b/libraries/Bridge/YunServer.h index e1be55a..eb16703 100644 --- a/libraries/Bridge/YunServer.h +++ b/libraries/Bridge/YunServer.h @@ -35,9 +35,13 @@ public:    virtual size_t write(uint8_t c) { /* TODO */ } +  void listenOnLocalhost()   { useLocalhost = true; } +  void noListenOnLocalhost() { useLocalhost = false; } +  private:    uint16_t port;    bool listening; +  bool useLocalhost;    BridgeClass &bridge;  }; | 
