var searchIndex = {}; searchIndex["igd"] = {"doc":"This library allows you to communicate with an IGD enabled device.\nUse one of the `search_gateway` functions to obtain a `Gateway` object.\nYou can then communicate with the device via this object.","items":[[4,"HttpError","igd","A set of errors that can occur parsing HTTP streams.",null,null],[13,"Method","","An invalid `Method`, such as `GE,T`.",0,null],[13,"Uri","","An invalid `RequestUri`, such as `exam ple.domain`.",0,null],[13,"Version","","An invalid `HttpVersion`, such as `HTP/1.1`",0,null],[13,"Header","","An invalid `Header`.",0,null],[13,"TooLarge","","A message head is too large to be reasonable.",0,null],[13,"Status","","An invalid `Status`, such as `1337 ELITE`.",0,null],[13,"Io","","An `io::Error` that occurred while trying to read or write to a network stream.",0,null],[13,"Ssl","","An error from a SSL library.",0,null],[13,"Http2","","An HTTP/2-specific error, coming from the `solicit` library.",0,null],[13,"Utf8","","Parsing a field as string failed",0,null],[3,"XmlError","","XML parsing error.",null,null],[3,"Gateway","","This structure represents a gateway found by the search functions.",null,null],[12,"addr","","Socket address of the gateway",1,null],[12,"control_url","","Control url of the device",1,null],[4,"PortMappingProtocol","","Represents the protocols available for port mapping.",null,null],[13,"TCP","","TCP protocol",2,null],[13,"UDP","","UDP protocol",2,null],[4,"RequestError","","Errors that can occur when sending the request to the gateway.",null,null],[13,"HttpError","","Http/Hyper error",3,null],[13,"IoError","","IO Error",3,null],[13,"InvalidResponse","","The response from the gateway could not be parsed.",3,null],[13,"ErrorCode","","The gateway returned an unhandled error code and description.",3,null],[4,"GetExternalIpError","","Errors returned by `Gateway::get_external_ip`",null,null],[13,"ActionNotAuthorized","","The client is not authorized to perform the operation.",4,null],[13,"RequestError","","Some other error occured performing the request.",4,null],[4,"RemovePortError","","Errors returned by `Gateway::remove_port`",null,null],[13,"ActionNotAuthorized","","The client is not authorized to perform the operation.",5,null],[13,"NoSuchPortMapping","","No such port mapping.",5,null],[13,"RequestError","","Some other error occured performing the request.",5,null],[4,"AddPortError","","Errors returned by `Gateway::add_port`",null,null],[13,"ActionNotAuthorized","","The client is not authorized to perform the operation.",6,null],[13,"InternalPortZeroInvalid","","Can not add a mapping for local port 0.",6,null],[13,"ExternalPortZeroInvalid","","External port number 0 (any port) is considered invalid by the gateway.",6,null],[13,"PortInUse","","The requested mapping conflicts with a mapping assigned to another client.",6,null],[13,"SamePortValuesRequired","","The gateway requires that the requested internal and external ports are the same.",6,null],[13,"OnlyPermanentLeasesSupported","","The gateway only supports permanent leases (ie. a `lease_duration` of 0).",6,null],[13,"DescriptionTooLong","","The description was too long for the gateway to handle.",6,null],[13,"RequestError","","Some other error occured performing the request.",6,null],[4,"AddAnyPortError","","Errors returned by `Gateway::add_any_port`",null,null],[13,"ActionNotAuthorized","","The client is not authorized to perform the operation.",7,null],[13,"InternalPortZeroInvalid","","Can not add a mapping for local port 0.",7,null],[13,"NoPortsAvailable","","The gateway does not have any free ports.",7,null],[13,"ExternalPortInUse","","The gateway can only map internal ports to same-numbered external ports\nand this external port is in use.",7,null],[13,"OnlyPermanentLeasesSupported","","The gateway only supports permanent leases (ie. a `lease_duration` of 0).",7,null],[13,"DescriptionTooLong","","The description was too long for the gateway to handle.",7,null],[13,"RequestError","","Some other error occured performing the request.",7,null],[4,"SearchError","","Errors than can occur while trying to find the gateway.",null,null],[13,"HttpError","","Http/Hyper error",8,null],[13,"InvalidResponse","","Unable to process the response",8,null],[13,"IoError","","IO Error",8,null],[13,"Utf8Error","","UTF-8 decoding error",8,null],[13,"XmlError","","XML processing error",8,null],[5,"search_gateway","","Search gateway, bind to all interfaces and use a timeout of 3 seconds.",null,{"inputs":[],"output":{"name":"result"}}],[5,"search_gateway_timeout","","Search gateway, bind to all interfaces and use the given duration for the timeout.",null,{"inputs":[{"name":"duration"}],"output":{"name":"result"}}],[5,"search_gateway_from","","Search gateway, bind to the given interface and use a time of 3 seconds.",null,{"inputs":[{"name":"ipv4addr"}],"output":{"name":"result"}}],[5,"search_gateway_from_timeout","","Search gateway, bind to the given interface and use the given duration for the timeout.",null,{"inputs":[{"name":"ipv4addr"},{"name":"duration"}],"output":{"name":"result"}}],[11,"fmt","","",3,null],[11,"fmt","","",4,null],[11,"fmt","","",5,null],[11,"fmt","","",7,null],[11,"fmt","","",6,null],[11,"from","","",3,{"inputs":[{"name":"error"}],"output":{"name":"requesterror"}}],[11,"from","","",3,{"inputs":[{"name":"error"}],"output":{"name":"requesterror"}}],[11,"fmt","","",3,null],[11,"cause","","",3,null],[11,"description","","",3,null],[11,"fmt","","",4,null],[11,"cause","","",4,null],[11,"description","","",4,null],[11,"fmt","","",5,null],[11,"cause","","",5,null],[11,"description","","",5,null],[11,"fmt","","",7,null],[11,"cause","","",7,null],[11,"description","","",7,null],[11,"fmt","","",6,null],[11,"cause","","",6,null],[11,"description","","",6,null],[11,"eq","","",2,null],[11,"clone","","",2,null],[11,"fmt","","",2,null],[11,"fmt","","",2,null],[11,"hash","","",1,null],[11,"eq","","",1,null],[11,"ne","","",1,null],[11,"fmt","","",1,null],[11,"get_external_ip","","Get the external IP address of the gateway.",1,null],[11,"add_any_port","","Add a port mapping.with any external port.",1,null],[11,"add_port","","Add a port mapping.",1,null],[11,"remove_port","","Remove a port mapping.",1,null],[11,"fmt","","",1,null],[11,"fmt","","",8,null],[11,"from","","",8,{"inputs":[{"name":"error"}],"output":{"name":"searcherror"}}],[11,"from","","",8,{"inputs":[{"name":"error"}],"output":{"name":"searcherror"}}],[11,"from","","",8,{"inputs":[{"name":"utf8error"}],"output":{"name":"searcherror"}}],[11,"from","","",8,{"inputs":[{"name":"xmlerror"}],"output":{"name":"searcherror"}}],[11,"fmt","","",8,null],[11,"cause","","",8,null],[11,"description","","",8,null],[11,"fmt","","",0,null],[11,"fmt","","",0,null],[11,"description","","",0,null],[11,"cause","","",0,null],[11,"from","","",0,{"inputs":[{"name":"error"}],"output":{"name":"error"}}],[11,"from","","",0,{"inputs":[{"name":"parseerror"}],"output":{"name":"error"}}],[11,"from","","",0,{"inputs":[{"name":"utf8error"}],"output":{"name":"error"}}],[11,"from","","",0,{"inputs":[{"name":"fromutf8error"}],"output":{"name":"error"}}],[11,"from","","",0,{"inputs":[{"name":"error"}],"output":{"name":"error"}}],[11,"from","","",0,{"inputs":[{"name":"httperror"}],"output":{"name":"error"}}],[11,"new","","Creates a new error using position information from the provided\n`Position` object and a message.",9,{"inputs":[{"name":"o"},{"name":"string"}],"output":{"name":"error"}}],[11,"msg","","Returns a reference to a message which is contained inside this error.",9,null],[11,"fmt","","",9,null],[11,"eq","","",9,null],[11,"ne","","",9,null],[11,"clone","","",9,null],[11,"fmt","","",9,null],[11,"position","","",9,null],[11,"description","","",9,null]],"paths":[[4,"HttpError"],[3,"Gateway"],[4,"PortMappingProtocol"],[4,"RequestError"],[4,"GetExternalIpError"],[4,"RemovePortError"],[4,"AddPortError"],[4,"AddAnyPortError"],[4,"SearchError"],[3,"XmlError"]]}; initSearch(searchIndex);