Add support for parsing extended responses (draft-ietf-otp-ext-01).
git-svn-id: svn://svn.h5l.se/heimdal/trunk/heimdal@924 ec53bebd-3082-4978-b11e-865c3cabbd6b
This commit is contained in:
		@@ -2239,11 +2239,19 @@ int
 | 
				
			|||||||
otp_parse (OtpKey key, char *s, OtpAlgorithm *alg)
 | 
					otp_parse (OtpKey key, char *s, OtpAlgorithm *alg)
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
  int ret;
 | 
					  int ret;
 | 
				
			||||||
 | 
					  int dohex = 1;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  if (strncmp (s, OTP_HEXPREFIX, strlen(OTP_HEXPREFIX)) == 0)
 | 
				
			||||||
 | 
					    return otp_parse_hex (key, s + strlen(OTP_HEXPREFIX));
 | 
				
			||||||
 | 
					  if (strncmp (s, OTP_WORDPREFIX, strlen(OTP_WORDPREFIX)) == 0) {
 | 
				
			||||||
 | 
					    s += strlen(OTP_WORDPREFIX);
 | 
				
			||||||
 | 
					    dohex = 0;
 | 
				
			||||||
 | 
					  }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  ret = otp_parse_stddict (key, s);
 | 
					  ret = otp_parse_stddict (key, s);
 | 
				
			||||||
  if (ret)
 | 
					  if (ret)
 | 
				
			||||||
    ret = otp_parse_altdict (key, s, alg);
 | 
					    ret = otp_parse_altdict (key, s, alg);
 | 
				
			||||||
  if (ret)
 | 
					  if (ret && dohex)
 | 
				
			||||||
    ret = otp_parse_hex (key, s);
 | 
					    ret = otp_parse_hex (key, s);
 | 
				
			||||||
  return ret;
 | 
					  return ret;
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 
 | 
				
			|||||||
		Reference in New Issue
	
	Block a user