Commit 626c18af authored by garciay's avatar garciay
Browse files

STF525: CAM/DENM bugs reported & fixed, Bug fiexed in...

STF525: CAM/DENM bugs reported & fixed, Bug fiexed in fx_computePositionUsingDistance\nSTF545: Add acPort support for Pki
parent 111eb2bf
Loading
Loading
Loading
Loading
+97 −0
Original line number Diff line number Diff line
#include <TTCN3.hh>

#include "LibItsPki_TestSystem.hh"

#include "loggers.hh"
#include "registration.hh"

#include "pki_layer.hh"

//=============================================================================
namespace LibItsPki__TestSystem {

  AdapterControlPkiPort::AdapterControlPkiPort(const char *par_port_name)
    : AdapterControlPkiPort_BASE(par_port_name), _params()
  {
    loggers::get_instance().log("AdapterControlPkiPort::AdapterControlPkiPort");


  }

  AdapterControlPkiPort::~AdapterControlPkiPort()
  {

  }

  void AdapterControlPkiPort::set_parameter(const char * parameter_name, const char * parameter_value)
  {
    loggers::get_instance().log("AdapterControlPkiPort::set_parameter: %s=%s", parameter_name, parameter_value);

  }

  /*void AdapterControlPkiPort::Handle_Fd_Event(int fd, boolean is_readable,
    boolean is_writable, boolean is_error) {}*/

  void AdapterControlPkiPort::Handle_Fd_Event_Error(int /*fd*/)
  {

  }

  void AdapterControlPkiPort::Handle_Fd_Event_Writable(int /*fd*/)
  {

  }

  void AdapterControlPkiPort::Handle_Fd_Event_Readable(int /*fd*/)
  {

  }

  /*void AdapterControlPkiPort::Handle_Timeout(double time_since_last_call) {}*/

  void AdapterControlPkiPort::user_map(const char * system_port)
  {
    loggers::get_instance().log(">>> AdapterControlPkiPort::user_map: %s", system_port);

  }

  void AdapterControlPkiPort::user_unmap(const char * system_port)
  {
    loggers::get_instance().log(">>> AdapterControlPkiPort::user_unmap: %s", system_port);

  }

  void AdapterControlPkiPort::user_start()
  {

  }

  void AdapterControlPkiPort::user_stop()
  {

  }

  void AdapterControlPkiPort::outgoing_send(const LibItsPki__TypesAndValues::AcPkiPrimitive& send_par)
  {
    loggers::get_instance().log_msg(">>> AdapterControlPkiPort::outgoing_send: ", send_par);
    
    // Register this object for AdapterControlPkiPort
    pki_layer* p = registration<pki_layer>::get_instance().get_item(std::string("PKI"));
    if (p != NULL) {
      loggers::get_instance().log("AdapterControlPkiPort::outgoing_send: Got PKI layer %p", p);
      LibItsPki__TypesAndValues::AcPkiResponse response;
      response.result() = BOOLEAN(false);
      if (send_par.ischosen(LibItsPki__TypesAndValues::AcPkiPrimitive::ALT_acSetSecurityData)) {
        loggers::get_instance().log("AdapterControlPkiPort::outgoing_send: AcSetSecurityData");
        p->set_pki_keys(send_par.acSetSecurityData());
        response.result() = BOOLEAN(true);
      }
      // Send response
      loggers::get_instance().log_msg("AdapterControlPkiPort::outgoing_send: Send response: ", response);
      incoming_message(response);
    } else {
      loggers::get_instance().error("AdapterControlPkiPort::outgoing_send: pkiPort not registered");
    }
  }

} /* end of namespace */
+40 −0
Original line number Diff line number Diff line
//=============================================================================
#include "LibItsPki_TestSystem.hh"

#include "params.hh"

namespace LibItsPki__TypesAndValues {
  class AcPkiPrimitive;
}

namespace LibItsPki__TestSystem {

class AdapterControlPkiPort : public AdapterControlPkiPort_BASE {
  params _params;
	
public:
	AdapterControlPkiPort(const char *par_port_name = NULL);
	~AdapterControlPkiPort();

	void set_parameter(const char *parameter_name,
		const char *parameter_value);

private:
	/* void Handle_Fd_Event(int fd, boolean is_readable,
		boolean is_writable, boolean is_error); */
	void Handle_Fd_Event_Error(int fd);
	void Handle_Fd_Event_Writable(int fd);
	void Handle_Fd_Event_Readable(int fd);
	/* void Handle_Timeout(double time_since_last_call); */
protected:
	void user_map(const char *system_port);
	void user_unmap(const char *system_port);

	void user_start();
	void user_stop();

	void outgoing_send(const LibItsPki__TypesAndValues::AcPkiPrimitive& send_par);
	
};

} /* end of namespace */