case IPSEC_ID_DER_ASN1_DN: data = conf_get_str (section, "Name"); if (!data) { log_print ("ipsec_id_size: section %s has no \"Name\" tag", section); return -1; } break;
ipsec_id_size (char *section, u_int8_t *id){  char *type, *data;  type = conf_get_str (section, "ID-type");  if (!type)    {      log_print ("ipsec_id_size: section %s has no \"ID-type\" tag", section);      return -1;    }  *id = constant_value (ipsec_id_cst, type);  switch (*id)    {    case IPSEC_ID_IPV4_ADDR:      return sizeof (struct in_addr);    case IPSEC_ID_IPV4_ADDR_SUBNET:      return 2 * sizeof (struct in_addr);    case IPSEC_ID_IPV6_ADDR:      return sizeof (struct in6_addr);    case IPSEC_ID_IPV6_ADDR_SUBNET:      return 2 * sizeof (struct in6_addr);    case IPSEC_ID_FQDN:    case IPSEC_ID_USER_FQDN:    case IPSEC_ID_KEY_ID:      data = conf_get_str (section, "Name");      if (!data)	{	  log_print ("ipsec_id_size: section %s has no \"Name\" tag", section);	  return -1;	}      return strlen (data);    }  log_print ("ipsec_id_size: unrecognized ID-type %d (%s)", *id, type);  return -1;}