Added password support into present3D's vnc support via the tag usage : <vnc password="mypassword">hostname</vnc>
This commit is contained in:
parent
9995cb70a9
commit
5d26d16fd3
@ -442,6 +442,21 @@ int main( int argc, char **argv )
|
|||||||
osg::DisplaySettings::instance()->readEnvironmentalVariables();
|
osg::DisplaySettings::instance()->readEnvironmentalVariables();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// set up any logins required for http access
|
||||||
|
std::string url, username, password;
|
||||||
|
while(arguments.read("--login",url, username, password))
|
||||||
|
{
|
||||||
|
if (!osgDB::Registry::instance()->getAuthenticationMap())
|
||||||
|
{
|
||||||
|
osgDB::Registry::instance()->setAuthenticationMap(new osgDB::AuthenticationMap);
|
||||||
|
osgDB::Registry::instance()->getAuthenticationMap()->addAuthenticationDetails(
|
||||||
|
url,
|
||||||
|
new osgDB::AuthenticationDetails(username, password)
|
||||||
|
);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
#ifdef USE_SDL
|
#ifdef USE_SDL
|
||||||
SDLIntegration sdlIntegration;
|
SDLIntegration sdlIntegration;
|
||||||
|
@ -394,7 +394,7 @@ public:
|
|||||||
void addStereoImagePair(const std::string& filenameLeft, const ImageData& imageDataLeft, const std::string& filenameRight,const ImageData& imageDataRight, const PositionData& positionData);
|
void addStereoImagePair(const std::string& filenameLeft, const ImageData& imageDataLeft, const std::string& filenameRight,const ImageData& imageDataRight, const PositionData& positionData);
|
||||||
|
|
||||||
void addGraph(const std::string& filename,const std::string& options,const PositionData& positionData, const ImageData& imageData);
|
void addGraph(const std::string& filename,const std::string& options,const PositionData& positionData, const ImageData& imageData);
|
||||||
void addVNC(const std::string& filename,const PositionData& positionData, const ImageData& imageData);
|
void addVNC(const std::string& filename,const PositionData& positionData, const ImageData& imageData, const std::string& password);
|
||||||
void addBrowser(const std::string& filename,const PositionData& positionData, const ImageData& imageData);
|
void addBrowser(const std::string& filename,const PositionData& positionData, const ImageData& imageData);
|
||||||
void addPDF(const std::string& filename,const PositionData& positionData, const ImageData& imageData);
|
void addPDF(const std::string& filename,const PositionData& positionData, const ImageData& imageData);
|
||||||
osg::Image* addInteractiveImage(const std::string& filename,const PositionData& positionData, const ImageData& imageData);
|
osg::Image* addInteractiveImage(const std::string& filename,const PositionData& positionData, const ImageData& imageData);
|
||||||
|
@ -1313,9 +1313,14 @@ void ReaderWriterP3DXML::parseLayer(osgPresentation::SlideShowConstructor& const
|
|||||||
osgPresentation::SlideShowConstructor::ImageData imageData;// = constructor.getImageData();
|
osgPresentation::SlideShowConstructor::ImageData imageData;// = constructor.getImageData();
|
||||||
getProperties(cur,imageData);
|
getProperties(cur,imageData);
|
||||||
|
|
||||||
|
std::string password;
|
||||||
|
getProperty(cur, "password", password);
|
||||||
|
|
||||||
constructor.addVNC(cur->getTrimmedContents(),
|
constructor.addVNC(cur->getTrimmedContents(),
|
||||||
positionRead ? positionData : constructor.getImagePositionData(),
|
positionRead ? positionData : constructor.getImagePositionData(),
|
||||||
imageData);
|
imageData,
|
||||||
|
password
|
||||||
|
);
|
||||||
}
|
}
|
||||||
else if (cur->name == "browser")
|
else if (cur->name == "browser")
|
||||||
{
|
{
|
||||||
|
@ -1277,8 +1277,15 @@ void SlideShowConstructor::addGraph(const std::string& contents,const std::strin
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
void SlideShowConstructor::addVNC(const std::string& hostname, const PositionData& positionData, const ImageData& imageData)
|
void SlideShowConstructor::addVNC(const std::string& hostname, const PositionData& positionData, const ImageData& imageData, const std::string& password)
|
||||||
{
|
{
|
||||||
|
if (!password.empty())
|
||||||
|
{
|
||||||
|
OSG_NOTICE<<"Setting password"<<std::endl;
|
||||||
|
if (!osgDB::Registry::instance()->getAuthenticationMap()) osgDB::Registry::instance()->setAuthenticationMap(new osgDB::AuthenticationMap);
|
||||||
|
osgDB::Registry::instance()->getAuthenticationMap()->addAuthenticationDetails(hostname, new osgDB::AuthenticationDetails("", password));
|
||||||
|
}
|
||||||
|
|
||||||
addInteractiveImage(hostname+".vnc", positionData, imageData);
|
addInteractiveImage(hostname+".vnc", positionData, imageData);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user