/* ==================================================================== * Copyright (c) 2001-2002 The OpenSSL Project. All rights reserved. * * Redistribution and use in source and binary forms, with or without * modification, are permitted provided that the following conditions * are met: * * 1. Redistributions of source code must retain the above copyright * notice, this list of conditions and the following disclaimer. * * 2. Redistributions in binary form must reproduce the above copyright * notice, this list of conditions and the following disclaimer in * the documentation and/or other materials provided with the * distribution. * * 3. All advertising materials mentioning features or use of this * software must display the following acknowledgment: * "This product includes software developed by the OpenSSL Project * for use in the OpenSSL Toolkit. (http://www.openssl.org/)" * * 4. The names "OpenSSL Toolkit" and "OpenSSL Project" must not be used to * endorse or promote products derived from this software without * prior written permission. For written permission, please contact * openssl-core@openssl.org. * * 5. Products derived from this software may not be called "OpenSSL" * nor may "OpenSSL" appear in their names without prior written * permission of the OpenSSL Project. * * 6. Redistributions of any form whatsoever must retain the following * acknowledgment: * "This product includes software developed by the OpenSSL Project * for use in the OpenSSL Toolkit (http://www.openssl.org/)" * * THIS SOFTWARE IS PROVIDED BY THE OpenSSL PROJECT ``AS IS'' AND ANY * EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE OpenSSL PROJECT OR * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED * OF THE POSSIBILITY OF SUCH DAMAGE. * ==================================================================== * * This product includes cryptographic software written by Eric Young * (eay@cryptsoft.com). This product includes software written by Tim * Hudson (tjh@cryptsoft.com). * */ #ifndef HEADER_GMP_ERR_H #define HEADER_GMP_ERR_H /* BEGIN ERROR CODES */ /* The following lines are auto generated by the script mkerr.pl. Any changes * made after this point may be overwritten when the script is next run. */ static void ERR_load_GMP_strings(void); static void ERR_unload_GMP_strings(void); static void ERR_GMP_error(int function, int reason, char *file, int line); #define GMPerr(f,r) ERR_GMP_error((f),(r),__FILE__,__LINE__) /* Error codes for the GMP functions. */ /* Function codes. */ #define GMP_F_E_GMP_CTRL 100 #define GMP_F_E_GMP_RSA_MOD_EXP 101 /* Reason codes. */ #define GMP_R_CTRL_COMMAND_NOT_IMPLEMENTED 100 #define GMP_R_KEY_CONTEXT_ERROR 101 #define GMP_R_MISSING_KEY_COMPONENTS 102 #ifdef __cplusplus } #endif #endif linenumbers'>
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71






































































                                                                                                         
# $Id$
#
# RelaxNG Scheme for up-down protocol, extracted from APNIC Wiki.
#
# libxml2 (including xmllint) only groks the XML syntax of RelaxNG, so
# run the compact syntax through trang to get XML syntax.

default namespace = "http://www.apnic.net/specs/rescerts/up-down/"

grammar {
  start = element message {
    attribute version { xsd:positiveInteger { maxInclusive="1" } },
    attribute sender { xsd:token { maxLength="1024" } },
    attribute recipient { xsd:token { maxLength="1024" } },
    payload
  }

  payload |= attribute type { "list" }, list_request
  payload |= attribute type { "list_response"}, list_response
  payload |= attribute type { "issue" }, issue_request
  payload |= attribute type { "issue_response"}, issue_response
  payload |= attribute type { "revoke" }, revoke_request
  payload |= attribute type { "revoke_response"}, revoke_response
  payload |= attribute type { "error_response"}, error_response

  list_request = empty
  list_response = class*

  class = element class {
    attribute class_name { xsd:token { maxLength="1024" } },
    attribute cert_url { xsd:string { maxLength="4096" } },
    attribute resource_set_as { xsd:string { maxLength="512000" pattern="[\-,0-9]*" } },
    attribute resource_set_ipv4 { xsd:string { maxLength="512000" pattern="[\-,/.0-9]*" } },
    attribute resource_set_ipv6 { xsd:string { maxLength="512000" pattern="[\-,/:0-9a-fA-F]*" } },
    attribute resource_set_notafter { xsd:dateTime { pattern=".*Z" } }?,
    attribute suggested_sia_head { xsd:anyURI { maxLength="1024" pattern="rsync://.+"} }?,
    element certificate {
      attribute cert_url { xsd:string { maxLength="4096" } },
      attribute req_resource_set_as { xsd:string { maxLength="512000" pattern="[\-,0-9]*" } }?,
      attribute req_resource_set_ipv4 { xsd:string { maxLength="512000" pattern="[\-,/.0-9]*" } }?,
      attribute req_resource_set_ipv6 { xsd:string { maxLength="512000" pattern="[\-,/:0-9a-fA-F]*" } }?,
      xsd:base64Binary { maxLength="512000" }
    }*,
    element issuer { xsd:base64Binary { maxLength="512000" } }
  }

  issue_request = element request {
    attribute class_name { xsd:token { maxLength="1024" } },
    attribute req_resource_set_as { xsd:string { maxLength="512000" pattern="[\-,0-9]*" } }?,
    attribute req_resource_set_ipv4 { xsd:string { maxLength="512000" pattern="[\-,/.0-9]*" } }?,
    attribute req_resource_set_ipv6 { xsd:string { maxLength="512000" pattern="[\-,/:0-9a-fA-F]*" } }?,
    xsd:base64Binary { maxLength="512000" }
  }
  issue_response = class

  revoke_request = revocation
  revoke_response = revocation

  revocation = element key {
    attribute class_name { xsd:token { maxLength="1024" } },
    attribute ski { xsd:token { maxLength="1024" } }
  }

  error_response =
    element status { xsd:positiveInteger { maxInclusive="999999999999999" } },
    element description { attribute xml:lang { xsd:language }, xsd:string { maxLength="1024" } }?
}

# Local Variables:
# indent-tabs-mode: nil
# End: