__gaa_helpsingle('r', "require-cert", "", "Require a valid certificate.");
__gaa_helpsingle('a', "disable-client-cert", "", "Disable request for a client certificate.");
__gaa_helpsingle(0, "pskpasswd", "FILE ", "PSK password file to use.");
+ __gaa_helpsingle(0, "pskhint", "HINT ", "PSK identity hint to use.");
__gaa_helpsingle(0, "srppasswd", "FILE ", "SRP password file to use.");
__gaa_helpsingle(0, "srppasswdconf", "FILE ", "SRP password conf file to use.");
__gaa_helpsingle(0, "opaque-prf-input", "DATA ", "Use Opaque PRF Input DATA.");
struct _gaainfo
{
-#line 109 "serv.gaa"
+#line 112 "serv.gaa"
char *priorities;
-#line 106 "serv.gaa"
+#line 109 "serv.gaa"
char **ctype;
-#line 105 "serv.gaa"
+#line 108 "serv.gaa"
int nctype;
-#line 102 "serv.gaa"
+#line 105 "serv.gaa"
char **kx;
-#line 101 "serv.gaa"
+#line 104 "serv.gaa"
int nkx;
-#line 98 "serv.gaa"
+#line 101 "serv.gaa"
char **macs;
-#line 97 "serv.gaa"
+#line 100 "serv.gaa"
int nmacs;
-#line 94 "serv.gaa"
+#line 97 "serv.gaa"
char **comp;
-#line 93 "serv.gaa"
+#line 96 "serv.gaa"
int ncomp;
-#line 90 "serv.gaa"
+#line 93 "serv.gaa"
char **proto;
-#line 89 "serv.gaa"
+#line 92 "serv.gaa"
int nproto;
-#line 86 "serv.gaa"
+#line 89 "serv.gaa"
char **ciphers;
-#line 85 "serv.gaa"
+#line 88 "serv.gaa"
int nciphers;
-#line 82 "serv.gaa"
+#line 85 "serv.gaa"
char *opaque_prf_input;
-#line 79 "serv.gaa"
+#line 82 "serv.gaa"
char *srp_passwd_conf;
-#line 76 "serv.gaa"
+#line 79 "serv.gaa"
char *srp_passwd;
+#line 76 "serv.gaa"
+ char *psk_hint;
#line 73 "serv.gaa"
char *psk_passwd;
#line 70 "serv.gaa"
#define GAA_MULTIPLE_OPTION 3
#define GAA_REST 0
-#define GAA_NB_OPTION 36
+#define GAA_NB_OPTION 37
#define GAAOPTID_copyright 1
#define GAAOPTID_version 2
#define GAAOPTID_help 3
#define GAAOPTID_opaque_prf_input 12
#define GAAOPTID_srppasswdconf 13
#define GAAOPTID_srppasswd 14
-#define GAAOPTID_pskpasswd 15
-#define GAAOPTID_disable_client_cert 16
-#define GAAOPTID_require_cert 17
-#define GAAOPTID_x509dsacertfile 18
-#define GAAOPTID_x509dsakeyfile 19
-#define GAAOPTID_x509certfile 20
-#define GAAOPTID_x509keyfile 21
-#define GAAOPTID_pgpsubkey 22
-#define GAAOPTID_pgpcertfile 23
-#define GAAOPTID_pgpkeyfile 24
-#define GAAOPTID_pgpkeyring 25
-#define GAAOPTID_x509crlfile 26
-#define GAAOPTID_x509cafile 27
-#define GAAOPTID_x509fmtder 28
-#define GAAOPTID_dhparams 29
-#define GAAOPTID_echo 30
-#define GAAOPTID_http 31
-#define GAAOPTID_nodb 32
-#define GAAOPTID_quiet 33
-#define GAAOPTID_port 34
-#define GAAOPTID_generate 35
-#define GAAOPTID_debug 36
+#define GAAOPTID_pskhint 15
+#define GAAOPTID_pskpasswd 16
+#define GAAOPTID_disable_client_cert 17
+#define GAAOPTID_require_cert 18
+#define GAAOPTID_x509dsacertfile 19
+#define GAAOPTID_x509dsakeyfile 20
+#define GAAOPTID_x509certfile 21
+#define GAAOPTID_x509keyfile 22
+#define GAAOPTID_pgpsubkey 23
+#define GAAOPTID_pgpcertfile 24
+#define GAAOPTID_pgpkeyfile 25
+#define GAAOPTID_pgpkeyring 26
+#define GAAOPTID_x509crlfile 27
+#define GAAOPTID_x509cafile 28
+#define GAAOPTID_x509fmtder 29
+#define GAAOPTID_dhparams 30
+#define GAAOPTID_echo 31
+#define GAAOPTID_http 32
+#define GAAOPTID_nodb 33
+#define GAAOPTID_quiet 34
+#define GAAOPTID_port 35
+#define GAAOPTID_generate 36
+#define GAAOPTID_debug 37
#line 168 "gaa.skel"
int size1;
};
+struct GAAOPTION_pskhint
+{
+ char* arg1;
+ int size1;
+};
+
struct GAAOPTION_pskpasswd
{
char* arg1;
GAA_CHECK1STR("", GAAOPTID_opaque_prf_input);
GAA_CHECK1STR("", GAAOPTID_srppasswdconf);
GAA_CHECK1STR("", GAAOPTID_srppasswd);
+ GAA_CHECK1STR("", GAAOPTID_pskhint);
GAA_CHECK1STR("", GAAOPTID_pskpasswd);
GAA_CHECK1STR("", GAAOPTID_x509dsacertfile);
GAA_CHECK1STR("", GAAOPTID_x509dsakeyfile);
GAA_CHECKSTR("opaque-prf-input", GAAOPTID_opaque_prf_input);
GAA_CHECKSTR("srppasswdconf", GAAOPTID_srppasswdconf);
GAA_CHECKSTR("srppasswd", GAAOPTID_srppasswd);
+ GAA_CHECKSTR("pskhint", GAAOPTID_pskhint);
GAA_CHECKSTR("pskpasswd", GAAOPTID_pskpasswd);
GAA_CHECKSTR("disable-client-cert", GAAOPTID_disable_client_cert);
GAA_CHECKSTR("require-cert", GAAOPTID_require_cert);
struct GAAOPTION_opaque_prf_input GAATMP_opaque_prf_input;
struct GAAOPTION_srppasswdconf GAATMP_srppasswdconf;
struct GAAOPTION_srppasswd GAATMP_srppasswd;
+ struct GAAOPTION_pskhint GAATMP_pskhint;
struct GAAOPTION_pskpasswd GAATMP_pskpasswd;
struct GAAOPTION_x509dsacertfile GAATMP_x509dsacertfile;
struct GAAOPTION_x509dsakeyfile GAATMP_x509dsakeyfile;
{
case GAAOPTID_copyright:
OK = 0;
-#line 116 "serv.gaa"
+#line 119 "serv.gaa"
{ print_serv_license(); exit(0); ;};
return GAA_OK;
break;
case GAAOPTID_version:
OK = 0;
-#line 115 "serv.gaa"
+#line 118 "serv.gaa"
{ serv_version(); exit(0); ;};
return GAA_OK;
break;
case GAAOPTID_help:
OK = 0;
-#line 113 "serv.gaa"
+#line 116 "serv.gaa"
{ gaa_help(); exit(0); ;};
return GAA_OK;
break;
case GAAOPTID_list:
OK = 0;
-#line 112 "serv.gaa"
+#line 115 "serv.gaa"
{ print_list(0); exit(0); ;};
return GAA_OK;
GAA_TESTMOREARGS;
GAA_FILL(GAATMP_priority.arg1, gaa_getstr, GAATMP_priority.size1);
gaa_index++;
-#line 110 "serv.gaa"
+#line 113 "serv.gaa"
{ gaaval->priorities = GAATMP_priority.arg1 ;};
return GAA_OK;
case GAAOPTID_ctypes:
OK = 0;
GAA_LIST_FILL(GAATMP_ctypes.arg1, gaa_getstr, char*, GAATMP_ctypes.size1);
-#line 107 "serv.gaa"
+#line 110 "serv.gaa"
{ gaaval->ctype = GAATMP_ctypes.arg1; gaaval->nctype = GAATMP_ctypes.size1 ;};
return GAA_OK;
case GAAOPTID_kx:
OK = 0;
GAA_LIST_FILL(GAATMP_kx.arg1, gaa_getstr, char*, GAATMP_kx.size1);
-#line 103 "serv.gaa"
+#line 106 "serv.gaa"
{ gaaval->kx = GAATMP_kx.arg1; gaaval->nkx = GAATMP_kx.size1 ;};
return GAA_OK;
case GAAOPTID_macs:
OK = 0;
GAA_LIST_FILL(GAATMP_macs.arg1, gaa_getstr, char*, GAATMP_macs.size1);
-#line 99 "serv.gaa"
+#line 102 "serv.gaa"
{ gaaval->macs = GAATMP_macs.arg1; gaaval->nmacs = GAATMP_macs.size1 ;};
return GAA_OK;
case GAAOPTID_comp:
OK = 0;
GAA_LIST_FILL(GAATMP_comp.arg1, gaa_getstr, char*, GAATMP_comp.size1);
-#line 95 "serv.gaa"
+#line 98 "serv.gaa"
{ gaaval->comp = GAATMP_comp.arg1; gaaval->ncomp = GAATMP_comp.size1 ;};
return GAA_OK;
case GAAOPTID_protocols:
OK = 0;
GAA_LIST_FILL(GAATMP_protocols.arg1, gaa_getstr, char*, GAATMP_protocols.size1);
-#line 91 "serv.gaa"
+#line 94 "serv.gaa"
{ gaaval->proto = GAATMP_protocols.arg1; gaaval->nproto = GAATMP_protocols.size1 ;};
return GAA_OK;
case GAAOPTID_ciphers:
OK = 0;
GAA_LIST_FILL(GAATMP_ciphers.arg1, gaa_getstr, char*, GAATMP_ciphers.size1);
-#line 87 "serv.gaa"
+#line 90 "serv.gaa"
{ gaaval->ciphers = GAATMP_ciphers.arg1; gaaval->nciphers = GAATMP_ciphers.size1 ;};
return GAA_OK;
GAA_TESTMOREARGS;
GAA_FILL(GAATMP_opaque_prf_input.arg1, gaa_getstr, GAATMP_opaque_prf_input.size1);
gaa_index++;
-#line 83 "serv.gaa"
+#line 86 "serv.gaa"
{ gaaval->opaque_prf_input = GAATMP_opaque_prf_input.arg1 ;};
return GAA_OK;
GAA_TESTMOREARGS;
GAA_FILL(GAATMP_srppasswdconf.arg1, gaa_getstr, GAATMP_srppasswdconf.size1);
gaa_index++;
-#line 80 "serv.gaa"
+#line 83 "serv.gaa"
{ gaaval->srp_passwd_conf = GAATMP_srppasswdconf.arg1 ;};
return GAA_OK;
GAA_TESTMOREARGS;
GAA_FILL(GAATMP_srppasswd.arg1, gaa_getstr, GAATMP_srppasswd.size1);
gaa_index++;
-#line 77 "serv.gaa"
+#line 80 "serv.gaa"
{ gaaval->srp_passwd = GAATMP_srppasswd.arg1 ;};
+ return GAA_OK;
+ break;
+ case GAAOPTID_pskhint:
+ OK = 0;
+ GAA_TESTMOREARGS;
+ GAA_FILL(GAATMP_pskhint.arg1, gaa_getstr, GAATMP_pskhint.size1);
+ gaa_index++;
+#line 77 "serv.gaa"
+{ gaaval->psk_hint = GAATMP_pskhint.arg1 ;};
+
return GAA_OK;
break;
case GAAOPTID_pskpasswd:
if(inited == 0)
{
-#line 120 "serv.gaa"
+#line 123 "serv.gaa"
{ gaaval->generate=0; gaaval->port=5556; gaaval->http=0; gaaval->ciphers=NULL;
gaaval->kx=NULL; gaaval->comp=NULL; gaaval->macs=NULL; gaaval->ctype=NULL; gaaval->nciphers=0;
gaaval->nkx=0; gaaval->ncomp=0; gaaval->nmacs=0; gaaval->nctype = 0; gaaval->nodb = 0;
len++;
a = fgetc( file);
- if(a==EOF) return 0; //a = ' ';
+ if(a==EOF) return 0; /* a = ' '; */
}
len += 1;