lib: Use asn1_has_error()
authorVolker Lendecke <vl@samba.org>
Sat, 2 Jan 2016 17:11:00 +0000 (18:11 +0100)
committerJeremy Allison <jra@samba.org>
Tue, 5 Jan 2016 23:54:18 +0000 (00:54 +0100)
Signed-off-by: Volker Lendecke <vl@samba.org>
Reviewed-by: Jeremy Allison <jra@samba.org>
auth/gensec/gensec_util.c
libcli/auth/spnego_parse.c
libcli/ldap/ldap_message.c
source3/lib/tldap.c
source3/libsmb/clispnego.c
source4/auth/gensec/gensec_krb5.c

index 8ef4b252affa8936ef163556e7859b91f0b8a088..64fffb1efc99c9efc6a79ae6483adc45309b85df 100644 (file)
@@ -81,7 +81,7 @@ static bool gensec_gssapi_check_oid(const DATA_BLOB *blob, const char *oid)
        if (!asn1_start_tag(data, ASN1_APPLICATION(0))) goto err;
        if (!asn1_check_OID(data, oid)) goto err;
 
-       ret = !data->has_error;
+       ret = !asn1_has_error(data);
 
   err:
 
index d4c5bdcfa5c2f266c828d9341df5d0f88db156a5..ba67273db30dd24bed280a25c152027d03fed052 100644 (file)
@@ -32,7 +32,7 @@ static bool read_negTokenInit(struct asn1_data *asn1, TALLOC_CTX *mem_ctx,
        if (!asn1_start_tag(asn1, ASN1_CONTEXT(0))) return false;
        if (!asn1_start_tag(asn1, ASN1_SEQUENCE(0))) return false;
 
-       while (!asn1->has_error && 0 < asn1_tag_remaining(asn1)) {
+       while (!asn1_has_error(asn1) && 0 < asn1_tag_remaining(asn1)) {
                int i;
                uint8_t context;
 
@@ -54,7 +54,7 @@ static bool read_negTokenInit(struct asn1_data *asn1, TALLOC_CTX *mem_ctx,
                                asn1->has_error = true;
                                return false;
                        }
-                       for (i = 0; !asn1->has_error &&
+                       for (i = 0; !asn1_has_error(asn1) &&
                                     0 < asn1_tag_remaining(asn1); i++) {
                                char *oid;
                                const char **p;
@@ -127,7 +127,7 @@ static bool read_negTokenInit(struct asn1_data *asn1, TALLOC_CTX *mem_ctx,
        if (!asn1_end_tag(asn1)) return false;
        if (!asn1_end_tag(asn1)) return false;
 
-       return !asn1->has_error;
+       return !asn1_has_error(asn1);
 }
 
 static bool write_negTokenInit(struct asn1_data *asn1, struct spnego_negTokenInit *token)
@@ -190,7 +190,7 @@ static bool write_negTokenInit(struct asn1_data *asn1, struct spnego_negTokenIni
        if (!asn1_pop_tag(asn1)) return false;
        if (!asn1_pop_tag(asn1)) return false;
 
-       return !asn1->has_error;
+       return !asn1_has_error(asn1);
 }
 
 static bool read_negTokenTarg(struct asn1_data *asn1, TALLOC_CTX *mem_ctx,
@@ -201,7 +201,7 @@ static bool read_negTokenTarg(struct asn1_data *asn1, TALLOC_CTX *mem_ctx,
        if (!asn1_start_tag(asn1, ASN1_CONTEXT(1))) return false;
        if (!asn1_start_tag(asn1, ASN1_SEQUENCE(0))) return false;
 
-       while (!asn1->has_error && 0 < asn1_tag_remaining(asn1)) {
+       while (!asn1_has_error(asn1) && 0 < asn1_tag_remaining(asn1)) {
                uint8_t context;
                char *oid;
                if (!asn1_peek_uint8(asn1, &context)) {
@@ -242,7 +242,7 @@ static bool read_negTokenTarg(struct asn1_data *asn1, TALLOC_CTX *mem_ctx,
        if (!asn1_end_tag(asn1)) return false;
        if (!asn1_end_tag(asn1)) return false;
 
-       return !asn1->has_error;
+       return !asn1_has_error(asn1);
 }
 
 static bool write_negTokenTarg(struct asn1_data *asn1, struct spnego_negTokenTarg *token)
@@ -279,7 +279,7 @@ static bool write_negTokenTarg(struct asn1_data *asn1, struct spnego_negTokenTar
        if (!asn1_pop_tag(asn1)) return false;
        if (!asn1_pop_tag(asn1)) return false;
 
-       return !asn1->has_error;
+       return !asn1_has_error(asn1);
 }
 
 ssize_t spnego_read_data(TALLOC_CTX *mem_ctx, DATA_BLOB data, struct spnego_data *token)
@@ -324,7 +324,7 @@ ssize_t spnego_read_data(TALLOC_CTX *mem_ctx, DATA_BLOB data, struct spnego_data
                }
        }
 
-       if (!asn1->has_error) ret = asn1->ofs;
+       if (!asn1_has_error(asn1)) ret = asn1->ofs;
 
   err:
 
@@ -357,7 +357,7 @@ ssize_t spnego_write_data(TALLOC_CTX *mem_ctx, DATA_BLOB *blob, struct spnego_da
                break;
        }
 
-       if (!asn1->has_error) {
+       if (!asn1_has_error(asn1)) {
                *blob = data_blob_talloc(mem_ctx, asn1->data, asn1->length);
                ret = asn1->ofs;
        }
@@ -423,7 +423,7 @@ bool spnego_write_mech_types(TALLOC_CTX *mem_ctx,
                if (!asn1_pop_tag(asn1)) goto err;
        }
 
-       if (asn1->has_error) {
+       if (asn1_has_error(asn1)) {
                goto err;
        }
 
index 491f96053cbc3e4c8aa5a9c25b678b6c37888fb9..f4b49ca31c9672db37b5cc8a73e1b3d691a74018 100644 (file)
@@ -322,7 +322,7 @@ static bool ldap_push_filter(struct asn1_data *data, struct ldb_parse_tree *tree
                if (!asn1_push_tag(data, ASN1_CONTEXT_SIMPLE(7))) return false;
                if (!asn1_write_LDAPString(data, tree->u.present.attr)) return false;
                if (!asn1_pop_tag(data)) return false;
-               return !data->has_error;
+               return !asn1_has_error(data);
 
        case LDB_OP_APPROX:
                /* approx test */
@@ -366,7 +366,7 @@ static bool ldap_push_filter(struct asn1_data *data, struct ldb_parse_tree *tree
        default:
                return false;
        }
-       return !data->has_error;
+       return !asn1_has_error(data);
 }
 
 static bool ldap_encode_response(struct asn1_data *data, struct ldap_Result *result)
@@ -845,7 +845,8 @@ static struct ldb_parse_tree *ldap_decode_filter_tree(TALLOC_CTX *mem_ctx,
                if (!asn1_read_OctetString_talloc(mem_ctx, data, &attrib)) goto failed;
                if (!asn1_read_OctetString(data, mem_ctx, &value)) goto failed;
                if (!asn1_end_tag(data)) goto failed;
-               if ((data->has_error) || (attrib == NULL) || (value.data == NULL)) {
+               if (asn1_has_error(data) || (attrib == NULL) ||
+                   (value.data == NULL)) {
                        goto failed;
                }
 
@@ -960,7 +961,8 @@ static struct ldb_parse_tree *ldap_decode_filter_tree(TALLOC_CTX *mem_ctx,
                if (!asn1_read_OctetString_talloc(mem_ctx, data, &attrib)) goto failed;
                if (!asn1_read_OctetString(data, mem_ctx, &value)) goto failed;
                if (!asn1_end_tag(data)) goto failed;
-               if ((data->has_error) || (attrib == NULL) || (value.data == NULL)) {
+               if (asn1_has_error(data) || (attrib == NULL) ||
+                   (value.data == NULL)) {
                        goto failed;
                }
 
@@ -979,7 +981,8 @@ static struct ldb_parse_tree *ldap_decode_filter_tree(TALLOC_CTX *mem_ctx,
                if (!asn1_read_OctetString_talloc(mem_ctx, data, &attrib)) goto failed;
                if (!asn1_read_OctetString(data, mem_ctx, &value)) goto failed;
                if (!asn1_end_tag(data)) goto failed;
-               if ((data->has_error) || (attrib == NULL) || (value.data == NULL)) {
+               if (asn1_has_error(data) || (attrib == NULL) ||
+                   (value.data == NULL)) {
                        goto failed;
                }
 
@@ -1017,7 +1020,8 @@ static struct ldb_parse_tree *ldap_decode_filter_tree(TALLOC_CTX *mem_ctx,
                if (!asn1_read_OctetString_talloc(mem_ctx, data, &attrib)) goto failed;
                if (!asn1_read_OctetString(data, mem_ctx, &value)) goto failed;
                if (!asn1_end_tag(data)) goto failed;
-               if ((data->has_error) || (attrib == NULL) || (value.data == NULL)) {
+               if (asn1_has_error(data) || (attrib == NULL) ||
+                   (value.data == NULL)) {
                        goto failed;
                }
 
@@ -1618,7 +1622,7 @@ _PUBLIC_ NTSTATUS ldap_decode(struct asn1_data *data,
        }
 
        if (!asn1_end_tag(data)) goto prot_err;
-       if ((data->has_error) || (data->nesting != NULL)) {
+       if (asn1_has_error(data) || (data->nesting != NULL)) {
                return NT_STATUS_LDAP(LDAP_PROTOCOL_ERROR);
        }
        return NT_STATUS_OK;
index 5d3773e4c7c67df85e6e44fd525c90d6de4787a3..17238a547e0ed75752e209dc1e15e942b5d5b7c5 100644 (file)
@@ -1315,7 +1315,7 @@ done:
        }
        s++;
 
-       if (data->has_error) {
+       if (asn1_has_error(data)) {
                return false;
        }
 
@@ -1529,7 +1529,7 @@ static bool tldap_push_filter_basic(struct tldap_context *ld,
                if (!asn1_write_OctetString(data, uval, uval_len)) return false;
        }
 
-       if (data->has_error) {
+       if (asn1_has_error(data)) {
                return false;
        }
        return asn1_pop_tag(data);
@@ -2019,7 +2019,7 @@ static bool tldap_decode_controls(struct tldap_req_state *state)
 
                if (!asn1_start_tag(data, ASN1_SEQUENCE(0))) goto out;
                if (!asn1_read_OctetString_talloc(msg, data, &oid)) goto out;
-               if ((data->has_error) || (oid == NULL)) {
+               if (asn1_has_error(data) || (oid == NULL)) {
                        goto out;
                }
                c->oid = oid;
index 52c19a9d9d46c93c39593b7fb90be944942917ec..cebe529fba117d28b8f2ee12a62a87cd877c1b43 100644 (file)
@@ -83,7 +83,7 @@ DATA_BLOB spnego_gen_negTokenInit(TALLOC_CTX *ctx,
 
   err:
 
-       if (data->has_error) {
+       if (asn1_has_error(data)) {
                DEBUG(1,("Failed to build negTokenInit at offset %d\n", (int)data->ofs));
        }
 
@@ -143,7 +143,7 @@ bool spnego_parse_negTokenInit(TALLOC_CTX *ctx,
                if (!asn1_read_OID(data,ctx, &OIDs[i])) {
                        goto err;
                }
-               if (data->has_error) {
+               if (asn1_has_error(data)) {
                        goto err;
                }
        }
@@ -209,11 +209,11 @@ bool spnego_parse_negTokenInit(TALLOC_CTX *ctx,
 
        if (!asn1_end_tag(data)) goto err;
 
-       ret = !data->has_error;
+       ret = !asn1_has_error(data);
 
   err:
 
-       if (data->has_error) {
+       if (asn1_has_error(data)) {
                int j;
                if (principal) {
                        TALLOC_FREE(*principal);
@@ -254,7 +254,7 @@ DATA_BLOB spnego_gen_krb5_wrap(TALLOC_CTX *ctx, const DATA_BLOB ticket, const ui
 
   err:
 
-       if (data->has_error) {
+       if (asn1_has_error(data)) {
                DEBUG(1,("Failed to build krb5 wrapper at offset %d\n", (int)data->ofs));
        }
 
@@ -342,11 +342,11 @@ bool spnego_parse_challenge(TALLOC_CTX *ctx, const DATA_BLOB blob,
        if (!asn1_end_tag(data)) goto err;
        if (!asn1_end_tag(data)) goto err;
 
-       ret = !data->has_error;
+       ret = !asn1_has_error(data);
 
   err:
 
-       if (data->has_error) {
+       if (asn1_has_error(data)) {
                data_blob_free(chal1);
                data_blob_free(chal2);
        }
@@ -452,11 +452,11 @@ bool spnego_parse_auth_response(TALLOC_CTX *ctx,
        if (!asn1_end_tag(data)) goto err;
        if (!asn1_end_tag(data)) goto err;
 
-       ret = !data->has_error;
+       ret = !asn1_has_error(data);
 
   err:
 
-       if (data->has_error) {
+       if (asn1_has_error(data)) {
                DEBUG(3,("spnego_parse_auth_response failed at %d\n", (int)data->ofs));
                asn1_free(data);
                data_blob_free(auth);
index 23c26f61e3b53bfadccef25525200366d6c58e69..a10963775a9a6e2df5cb3fcaa34654ef69c7e2cd 100644 (file)
@@ -464,7 +464,7 @@ static bool gensec_gssapi_parse_krb5_wrap(TALLOC_CTX *mem_ctx, const DATA_BLOB *
 
        if (!asn1_end_tag(data)) goto err;
 
-       ret = !data->has_error;
+       ret = !asn1_has_error(data);
 
   err: