Commit c2a75094 authored by Lev Walkin's avatar Lev Walkin

class field access problem

parent 6ec10329
0.9.21: 2006-Mar-09 0.9.21: 2006-Mar-14
* skeletons/standard-modules directory is now used for standard types. * skeletons/standard-modules directory is now used for standard types.
* Refactored system for parsing Information Object Classes. * Refactored system for parsing Information Object Classes.
* Fixed class field access problem (Test case 98)
(Severity: medim; Security impact: none)
0.9.20: 2006-Mar-06 0.9.20: 2006-Mar-06
...@@ -476,6 +478,7 @@ SEVERITY. ...@@ -476,6 +478,7 @@ SEVERITY.
SECURITY IMPACT. SECURITY IMPACT.
This term applies to the amount of potential damage a bug exploitation This term applies to the amount of potential damage a bug exploitation
could cause. could cause.
none: No malicious exploitation is possible.
low: The local exploitation is unlikely; the remote exploitation low: The local exploitation is unlikely; the remote exploitation
is impossible. is impossible.
medium: The remote exploitation is possible when a particular ASN.1 medium: The remote exploitation is possible when a particular ASN.1
......
...@@ -131,6 +131,8 @@ asn1c_type_name(arg_t *arg, asn1p_expr_t *expr, enum tnfmt _format) { ...@@ -131,6 +131,8 @@ asn1c_type_name(arg_t *arg, asn1p_expr_t *expr, enum tnfmt _format) {
while(top_parent->parent_expr) while(top_parent->parent_expr)
top_parent = top_parent->parent_expr; top_parent = top_parent->parent_expr;
DEBUG("asn1c_type_name(%s: 0x%x)", expr->Identifier, expr->expr_type);
switch(expr->expr_type) { switch(expr->expr_type) {
case A1TC_REFERENCE: case A1TC_REFERENCE:
typename = expr->reference->components[ typename = expr->reference->components[
...@@ -144,7 +146,7 @@ asn1c_type_name(arg_t *arg, asn1p_expr_t *expr, enum tnfmt _format) { ...@@ -144,7 +146,7 @@ asn1c_type_name(arg_t *arg, asn1p_expr_t *expr, enum tnfmt _format) {
*/ */
tmp.expr = asn1f_class_access_ex(arg->asn, tmp.expr = asn1f_class_access_ex(arg->asn,
arg->expr->module, arg->expr, expr->reference); arg->expr->module, arg->expr, expr->reference);
if(tmp.expr) return NULL; if(!tmp.expr) return NULL;
return asn1c_type_name(&tmp, tmp.expr, _format); return asn1c_type_name(&tmp, tmp.expr, _format);
} }
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment