]> git.meshlink.io Git - meshlink-tiny/blobdiff - src/meshlink-tiny++.h
Remove support for automatically detecting external addresses.
[meshlink-tiny] / src / meshlink-tiny++.h
index b9e7bb7ccb79387bdae678dc0978c911e1a89187..eba23aa3776a687d520ec0d94209b4254d569d58 100644 (file)
@@ -526,107 +526,6 @@ public:
                return meshlink_clear_canonical_address(handle, node);
        }
 
-       /// Add an Address for the local node.
-       /** This function adds an Address for the local node, which will be used for invitation URLs.
-        *  @deprecated This function is deprecated, use set_canonical_address() and/or add_invitation_address().
-        *
-        *  @param address      A string containing the address, which can be either in numeric format or a hostname.
-        *
-        *  @return             This function returns true if the address was added, false otherwise.
-        */
-       bool add_address(const char *address) __attribute__((__deprecated__("use set_canonical_address() and/or add_invitation_address() instead"))) {
-               return meshlink_set_canonical_address(handle, get_self(), address, NULL);
-       }
-
-       /** This function performs tries to discover the local node's external address
-        *  by contacting the meshlink.io server. If a reverse lookup of the address works,
-        *  the FQDN associated with the address will be returned.
-        *
-        *  Please note that this is function only returns a single address,
-        *  even if the local node might have more than one external address.
-        *  In that case, there is no control over which address will be selected.
-        *  Also note that if you have a dynamic IP address, or are behind carrier-grade NAT,
-        *  there is no guarantee that the external address will be valid for an extended period of time.
-        *
-        *  This function is blocking. It can take several seconds before it returns.
-        *  There is no guarantee it will be able to resolve the external address.
-        *  Failures might be because by temporary network outages.
-        *
-        *  @param family       The address family to check, for example AF_INET or AF_INET6. If AF_UNSPEC is given,
-        *                      this might return the external address for any working address family.
-        *
-        *  @return             This function returns a pointer to a C string containing the discovered external address,
-        *                      or NULL if there was an error looking up the address.
-        *                      After get_external_address() returns, the application is free to overwrite or free this string.
-        */
-       bool get_external_address(int family = AF_UNSPEC) {
-               return meshlink_get_external_address_for_family(handle, family);
-       }
-
-       /** This function performs tries to discover the address of the local interface used for outgoing connection.
-        *
-        *  Please note that this is function only returns a single address,
-        *  even if the local node might have more than one external address.
-        *  In that case, there is no control over which address will be selected.
-        *  Also note that if you have a dynamic IP address, or are behind carrier-grade NAT,
-        *  there is no guarantee that the external address will be valid for an extended period of time.
-        *
-        *  This function will fail if it couldn't find a local address for the given address family.
-        *  If hostname resolving is requested, this function may block for a few seconds.
-        *
-        *  @param family       The address family to check, for example AF_INET or AF_INET6. If AF_UNSPEC is given,
-        *                      this might return the external address for any working address family.
-        *
-        *  @return             This function returns a pointer to a C string containing the discovered external address,
-        *                      or NULL if there was an error looking up the address.
-        *                      After get_external_address() returns, the application is free to overwrite or free this string.
-        */
-       bool get_local_address(int family = AF_UNSPEC) {
-               return meshlink_get_local_address_for_family(handle, family);
-       }
-
-       /// Try to discover the external address for the local node, and add it to its list of addresses.
-       /** This function is equivalent to:
-        *
-        *    mesh->add_address(mesh->get_external_address());
-        *
-        *  Read the description of get_external_address() for the limitations of this function.
-        *
-        *  @return             This function returns true if the address was added, false otherwise.
-        */
-       bool add_external_address() {
-               return meshlink_add_external_address(handle);
-       }
-
-       /// Get the network port used by the local node.
-       /** This function returns the network port that the local node is listening on.
-        *
-        *  @return              This function returns the port number, or -1 in case of an error.
-        */
-       int get_port() {
-               return meshlink_get_port(handle);
-       }
-
-       /// Set the network port used by the local node.
-       /** This function sets the network port that the local node is listening on.
-        *  It may only be called when the mesh is not running.
-        *  If unsure, call stop() before calling this function.
-        *  Also note that if your node is already part of a mesh with other nodes,
-        *  that the other nodes may no longer be able to initiate connections to the local node,
-        *  since they will try to connect to the previously configured port.
-        *
-        *  @param port          The port number to listen on. This must be between 0 and 65535.
-        *                       If the port is set to 0, then MeshLink will listen on a port
-        *                       that is randomly assigned by the operating system every time open() is called.
-        *
-        *  @return              This function returns true if the port was successfully changed
-        *                       to the desired port, false otherwise. If it returns false, there
-        *                       is no guarantee that MeshLink is listening on the old port.
-        */
-       bool set_port(int port) {
-               return meshlink_set_port(handle, port);
-       }
-
        /// Set the scheduling granularity of the application
        /** This should be set to the effective scheduling granularity for the application.
         *  This depends on the scheduling granularity of the operating system, the application's
@@ -1017,16 +916,6 @@ public:
                return meshlink_channel_get_mss(handle, channel);
        };
 
-       /// Enable or disable zeroconf discovery of local peers
-       /** This controls whether zeroconf discovery using the Catta library will be
-        *  enabled to search for peers on the local network. By default, it is enabled.
-        *
-        *  @param enable  Set to true to enable discovery, false to disable.
-        */
-       void enable_discovery(bool enable = true) {
-               meshlink_enable_discovery(handle, enable);
-       }
-
        /// Inform MeshLink that the local network configuration might have changed
        /** This is intended to be used when there is no way for MeshLink to get notifications of local network changes.
         *  It forces MeshLink to scan all network interfaces for changes in up/down status and new/removed addresses,
@@ -1080,17 +969,6 @@ public:
                meshlink_set_inviter_commits_first(handle, inviter_commits_first);
        }
 
-       /// Set the URL used to discover the host's external address
-       /** For generating invitation URLs, MeshLink can look up the externally visible address of the local node.
-        *  It does so by querying an external service. By default, this is http://meshlink.io/host.cgi.
-        *  Only URLs starting with http:// are supported.
-        *
-        *  @param url   The URL to use for external address queries, or NULL to revert back to the default URL.
-        */
-       void set_external_address_discovery_url(const char *url) {
-               meshlink_set_external_address_discovery_url(handle, url);
-       }
-
 private:
        // non-copyable:
        mesh(const mesh &) /* TODO: C++11: = delete */;