diff options
Diffstat (limited to 'src/lib/libcrypto/x509/x509_addr.c')
| -rw-r--r-- | src/lib/libcrypto/x509/x509_addr.c | 103 |
1 files changed, 99 insertions, 4 deletions
diff --git a/src/lib/libcrypto/x509/x509_addr.c b/src/lib/libcrypto/x509/x509_addr.c index 4258dbc40c..5aff2700fb 100644 --- a/src/lib/libcrypto/x509/x509_addr.c +++ b/src/lib/libcrypto/x509/x509_addr.c | |||
| @@ -54,10 +54,105 @@ ASN1_ITEM_TEMPLATE(IPAddrBlocks) = | |||
| 54 | IPAddrBlocks, IPAddressFamily) | 54 | IPAddrBlocks, IPAddressFamily) |
| 55 | static_ASN1_ITEM_TEMPLATE_END(IPAddrBlocks) | 55 | static_ASN1_ITEM_TEMPLATE_END(IPAddrBlocks) |
| 56 | 56 | ||
| 57 | IMPLEMENT_ASN1_FUNCTIONS(IPAddressRange) | 57 | IPAddressRange * |
| 58 | IMPLEMENT_ASN1_FUNCTIONS(IPAddressOrRange) | 58 | d2i_IPAddressRange(IPAddressRange **a, const unsigned char **in, long len) |
| 59 | IMPLEMENT_ASN1_FUNCTIONS(IPAddressChoice) | 59 | { |
| 60 | IMPLEMENT_ASN1_FUNCTIONS(IPAddressFamily) | 60 | return (IPAddressRange *)ASN1_item_d2i((ASN1_VALUE **)a, in, len, |
| 61 | (&(IPAddressRange_it))); | ||
| 62 | } | ||
| 63 | |||
| 64 | int | ||
| 65 | i2d_IPAddressRange(IPAddressRange *a, unsigned char **out) | ||
| 66 | { | ||
| 67 | return ASN1_item_i2d((ASN1_VALUE *)a, out, (&(IPAddressRange_it))); | ||
| 68 | } | ||
| 69 | |||
| 70 | IPAddressRange * | ||
| 71 | IPAddressRange_new(void) | ||
| 72 | { | ||
| 73 | return (IPAddressRange *)ASN1_item_new((&(IPAddressRange_it))); | ||
| 74 | } | ||
| 75 | |||
| 76 | void | ||
| 77 | IPAddressRange_free(IPAddressRange *a) | ||
| 78 | { | ||
| 79 | ASN1_item_free((ASN1_VALUE *)a, (&(IPAddressRange_it))); | ||
| 80 | } | ||
| 81 | |||
| 82 | IPAddressOrRange * | ||
| 83 | d2i_IPAddressOrRange(IPAddressOrRange **a, const unsigned char **in, long len) | ||
| 84 | { | ||
| 85 | return (IPAddressOrRange *)ASN1_item_d2i((ASN1_VALUE **)a, in, len, | ||
| 86 | (&(IPAddressOrRange_it))); | ||
| 87 | } | ||
| 88 | |||
| 89 | int | ||
| 90 | i2d_IPAddressOrRange(IPAddressOrRange *a, unsigned char ** out) | ||
| 91 | { | ||
| 92 | return ASN1_item_i2d((ASN1_VALUE *)a, out, (&(IPAddressOrRange_it))); | ||
| 93 | } | ||
| 94 | |||
| 95 | IPAddressOrRange * | ||
| 96 | IPAddressOrRange_new(void) | ||
| 97 | { | ||
| 98 | return (IPAddressOrRange *)ASN1_item_new((&(IPAddressOrRange_it))); | ||
| 99 | } | ||
| 100 | |||
| 101 | void | ||
| 102 | IPAddressOrRange_free(IPAddressOrRange *a) { | ||
| 103 | ASN1_item_free((ASN1_VALUE *)a, (&(IPAddressOrRange_it))); | ||
| 104 | } | ||
| 105 | |||
| 106 | IPAddressChoice * | ||
| 107 | d2i_IPAddressChoice(IPAddressChoice **a, const unsigned char **in, long len) | ||
| 108 | { | ||
| 109 | return (IPAddressChoice *)ASN1_item_d2i((ASN1_VALUE **)a, in, len, | ||
| 110 | (&(IPAddressChoice_it))); | ||
| 111 | } | ||
| 112 | |||
| 113 | int | ||
| 114 | i2d_IPAddressChoice(IPAddressChoice *a, unsigned char **out) | ||
| 115 | { | ||
| 116 | return ASN1_item_i2d((ASN1_VALUE *)a, out, (&(IPAddressChoice_it))); | ||
| 117 | } | ||
| 118 | |||
| 119 | IPAddressChoice * | ||
| 120 | IPAddressChoice_new(void) | ||
| 121 | { | ||
| 122 | return (IPAddressChoice *)ASN1_item_new((&(IPAddressChoice_it))); | ||
| 123 | |||
| 124 | } | ||
| 125 | |||
| 126 | void | ||
| 127 | IPAddressChoice_free(IPAddressChoice *a) | ||
| 128 | { | ||
| 129 | ASN1_item_free((ASN1_VALUE *)a, (&(IPAddressChoice_it))); | ||
| 130 | } | ||
| 131 | |||
| 132 | IPAddressFamily * | ||
| 133 | d2i_IPAddressFamily(IPAddressFamily **a, const unsigned char **in, long len) | ||
| 134 | { | ||
| 135 | return (IPAddressFamily *)ASN1_item_d2i((ASN1_VALUE **)a, in, len, | ||
| 136 | (&(IPAddressFamily_it))); | ||
| 137 | } | ||
| 138 | |||
| 139 | int | ||
| 140 | i2d_IPAddressFamily(IPAddressFamily *a, unsigned char **out) | ||
| 141 | { | ||
| 142 | return ASN1_item_i2d((ASN1_VALUE *)a, out, (&(IPAddressFamily_it))); | ||
| 143 | } | ||
| 144 | |||
| 145 | IPAddressFamily * | ||
| 146 | IPAddressFamily_new(void) | ||
| 147 | { | ||
| 148 | return (IPAddressFamily *)ASN1_item_new((&(IPAddressFamily_it))); | ||
| 149 | } | ||
| 150 | |||
| 151 | void | ||
| 152 | IPAddressFamily_free(IPAddressFamily *a) | ||
| 153 | { | ||
| 154 | ASN1_item_free((ASN1_VALUE *)a, (&(IPAddressFamily_it))); | ||
| 155 | } | ||
| 61 | 156 | ||
| 62 | /* | 157 | /* |
| 63 | * How much buffer space do we need for a raw address? | 158 | * How much buffer space do we need for a raw address? |
