+++ /dev/null
-//----------------------------------------------------------------------------
-//
-// Copyright (C) Intel Corporation, 2004 - 2006.
-//
-// File: CommonDefinitions.h
-//
-// Contents: Sample code for an IntelĀ® AMT Network client.
-//
-// Notes: This file contains type, function and constant definitions
-// used throughout the code of the all sample applications.
-//
-//----------------------------------------------------------------------------
-
-#ifndef COMMON_DEFINITIONS_H
-#define COMMON_DEFINITIONS_H
-
-
-#include "StatusCodeDefinitions.h"
-#ifdef _WIN32
-/*
- * gsoapWinHTTP.h for gSoap WinHTTP extension - needed for TLS support
- */
-#include "gsoapWinHttp.h"
-#include "StatusStrings.h"
-#include <conio.h>
-#else
-/*
- * httpDigest.h for gSoap HTTP Digest support
- */
-#include "httpDigest.h"
-#endif
-
-/*
- * Function prototypes
- */
-void PrintAuthenticationNote();
-bool CheckReturnStatus(unsigned int res, unsigned long status,const char *message);
-bool ValidateIP(const char *uri);
-void GetString(char *msg, char *s, bool hidden);
-bool ChangeService(const char *uri, const char *newService, char *newUri);
-bool DisplayWarning(const char *msg);
-bool GetNumber(int *number);
-void ReplaceSubstring(const char *oldString,const char *oldSubstr,
- const char *newSubstr, char *newString);
-void SetIPAddress(unsigned long &address, unsigned long bytes[]);
-void NumberToIP(unsigned long address, unsigned long bytes[]);
-void NumberToString(unsigned long number, char *string);
-void IpToString(unsigned long address, char *string);
-void StringToIP(const char *string, unsigned long &address);
-void GuidToString(const unsigned char* guid, char* string);
-bool ExtractIPFromUri(const char *uri, char *baseUrl);
-void IsEmulator(const char *targetUrl, int *isEmulator);
-bool GetOption(int *commandLineLength, char *argv[], int numOfArgs,
- char **option, char **commandLine[]);
-void PrintSuccess(bool print = true);
-void FunctionCall(const char *message);
-#ifdef _WIN32
-bool ParseCommandLine(int commandLineLength,char* commandLine[],char **target,
- char **certName, bool *local, bool *krb,bool *verbose = NULL,
- char **username = NULL, char **password = NULL);
-#define CHAR _TCHAR
-#else
-bool ParseCommandLine(int commandLineLength,char* commandLine[],char **target,
- char **certName = NULL,char **certPass = NULL,
- bool *verbose = NULL,
- char **username = NULL, char **password = NULL);
-#define CHAR char
-#endif
-
-/*
- * Constants for the common use
- */
-static const int MAX_LINE_LEN = 1024;
-static const int TIMEOUT = 80;
-static const char *DEFAULT_USERNAME = "admin";
-static const char *DEFAULT_PASSWORD = "admin";
-static const char *CERT_NAME = "-certName";
-static const char *USER = "-user";
-static const char *PASS = "-pass";
-static const char *VERBOSE = "-verbose";
-#ifdef _WIN32
-static const char *LOCAL = "-local";
-static const char *KRB = "-krb";
-#else
-static const char *CERT_PASS = "-certPass";
-#endif
-
-/*
- * The structure that represents
- * the gSOAP rintime environment
- */
-class Soap
-{
-private:
- struct soap *m_soap;
- char *m_username;
- char *m_password;
- char *m_ip;
-
-public:
- // Constructor
-#ifdef _WIN32
- Soap(const char *url, const char *certName,
- const char *username, const char *password,
- bool local, bool krb)
-#else
- Soap(const char *url, const char *certName,
- const char *certPass, const char *username,
- const char *password)
-#endif
- {
- m_username = new char[MAX_LINE_LEN];
- m_password = new char[MAX_LINE_LEN];
- m_ip = new char[MAX_LINE_LEN];
- SetIp(url);
- SetUsername(DEFAULT_USERNAME);
- SetPassword(DEFAULT_PASSWORD);
-
- if (
-#ifdef _WIN32
- krb == false &&
-#endif
- !username)
- {
- // To use the default user name, comment the following line:
- GetString("Username: ", m_username, false);
- }
- else
- {
- SetUsername(username);
- }
-
- if (
-#ifdef _WIN32
- krb == false &&
-#endif
- !password)
- {
- // To use the default password, comment the following line:
- GetString("Password: ", m_password, true);
- }
- else
- {
- SetPassword(password);
- }
- m_soap = soap_new();
- if( m_soap )
- {
-#ifdef _WIN32
- SetSoap(certName,local,krb);
-#else
- SetSoap(certName,certPass);
-#endif
-
- }
- }
-
- void Init(SOAP_NMAC struct Namespace *name = NULL)
- {
- m_soap->userid = m_username;
- m_soap->passwd = m_password;
-
- if(name != NULL)
- {
- // setting namespace for the runtime environment
- soap_set_namespaces(m_soap, name);
- }
- }
-
- char *GetIp()
- {
- return m_ip;
- }
-
- char *GetUsername()
- {
- return m_username;
- }
-
- char *GetPassword()
- {
- return m_password;
- }
-
- struct soap *GetSoap()
- {
- return m_soap;
- }
-
- void SetIp(const char *url)
- {
- memset(m_ip, 0, MAX_LINE_LEN);
- if(url != NULL)
- {
- strncpy(m_ip, url, MAX_LINE_LEN - 1);
- }
- }
-
- void SetUsername(const char *username)
- {
- memset(m_username,0,MAX_LINE_LEN);
- if(username != NULL)
- {
- strncpy(m_username, username, MAX_LINE_LEN - 1);
- }
- }
-
- void SetPassword(const char *password)
- {
- memset(m_password,0,MAX_LINE_LEN);
- if(password != NULL)
- {
- strncpy(m_password, password, MAX_LINE_LEN - 1);
- }
- }
-
-#ifdef _WIN32
- void SetSoap(const CHAR *certName, bool local, bool krb)
-#else
- void SetSoap(const CHAR *certName, const char *certPass)
-#endif
- {
- m_soap->recv_timeout = TIMEOUT;
- m_soap->send_timeout = TIMEOUT;
- m_soap->connect_timeout = TIMEOUT;
- m_soap->accept_timeout = TIMEOUT;
-
-#ifdef _WIN32
- // gsoap winhttp extension
- soap_register_plugin( m_soap, winhttp_plugin );
- soap_omode(m_soap, SOAP_IO_KEEPALIVE);
- if( certName )
- {
- winhttp_set_certificate_name(m_soap, certName);
- }
-
- winhttp_set_local(m_soap,local);
- winhttp_set_auth_scheme(m_soap,krb);
-#else
- // gsoap HTTP Digest plugin
- if ( strncmp(m_ip+strlen(m_ip)-5, ".asmx", 5)) {
- soap_register_plugin(m_soap, http_digest);
- }
- soap_omode(m_soap, SOAP_IO_KEEPALIVE);
- soap_imode(m_soap, SOAP_IO_KEEPALIVE);
- if ( !strncmp(m_ip, "https:", 6) )
- {
- soap_ssl_client_context(m_soap,
- SOAP_SSL_DEFAULT,
- certName,
- certPass,
- "/usr/share/ssl/cert.pem",
- "/usr/share/ssl/certs/", NULL);
- }
-#endif
- }
-
- // Destructor
- ~Soap()
- {
- if(m_username)
- {
- delete [] m_username;
- m_username = NULL;
- }
- if(m_password)
- {
- delete [] m_password;
- m_password = NULL;
- }
- if(m_ip)
- {
- delete [] m_ip;
- m_ip = NULL;
- }
- if( m_soap ){
- soap_destroy(m_soap);
- soap_end(m_soap);
- soap_done(m_soap);
- free(m_soap);
- m_soap = NULL;
- }
- }
-};
-
-
-
-
-#endif