# Processor
[Rampart Utilities]

## Functions
AXIS2_EXTERN axis2_status_t | rampart_token_process_key_info (const axutil_env_t *env, axiom_node_t *key_info_node, axiom_node_t *sec_node, rampart_context_t *rampart_context, axis2_msg_ctx_t *msg_ctx, axis2_bool_t is_signature, oxs_x509_cert_t **cert, oxs_key_t **key, axis2_char_t **token_type, axis2_char_t **reference_method)

## Function Documentation

AXIS2_EXTERN axis2_status_t rampart_token_process_key_info | ( | const axutil_env_t * | env,
|  | axiom_node_t * | key_info_node,
|  | axiom_node_t * | sec_node,
|  | rampart_context_t * | rampart_context,
|  | axis2_msg_ctx_t * | msg_ctx,
|  | axis2_bool_t | is_signature,
|  | oxs_x509_cert_t ** | cert,
|  | oxs_key_t ** | key,
|  | axis2_char_t ** | token_type,
|  | axis2_char_t ** | reference_method |
| ) |  |  |

Extract certificate/session_key related information using given key_info node and scope node This will extract either certificate(asymmetric signing) or session_key (symmetric signing)

Parameters:

  | env | Environment structure
  | key_info_node | key info node.
  | sec_node | security header node
  | rampart_context | rampart context where key details could be found.
  | msg_ctx | message context
  | is_signature | boolean denoting whether the key_info is for signature
  | cert | where the certificate extracted (if any) should be populated
  | key | where the session key extracted (if any) should be populated
  | token_type | where the token type should be populated
  | reference_method | where the token reference method should be populated

Returns:
  status of the operation