git/list[1] front-page[2] threads[3] people[4] search[5] about
 

Re: [PATCH 2/2] tag: convert gpg_verify_tag to use struct object_id

From
Junio C Hamano <gitster@pobox.com>
Date
Jul 13, 2017, 20:52 UTC
Message-ID
<xmqq4lugukju.fsf@gitster.mtv.corp.google.com>
In-Reply-To
<20170713004415.5051-2-sbeller@google.com>
Stefan Beller <sbeller@google.com> writes:
Show 17 quoted lines
> diff --git a/builtin/verify-tag.c b/builtin/verify-tag.c
> index f9a5f7535a..ed8329340f 100644
> --- a/builtin/verify-tag.c
> +++ b/builtin/verify-tag.c
> @@ -56,20 +56,21 @@ int cmd_verify_tag(int argc, const char **argv, const char *prefix)
>  	}
>  
>  	while (i < argc) {
> -		unsigned char sha1[20];
> +		struct object_id oid;
>  		const char *name = argv[i++];
> -		if (get_sha1(name, sha1)) {
> +
> +		if (get_oid(name, &oid)) {
>  			had_error = !!error("tag '%s' not found.", name);
>  			continue;
>  		}

This part is already done, it seems, in bc/object-id topic, even though other parts are not yet done?

Show 64 quoted lines
>  
> -		if (gpg_verify_tag(sha1, name, flags)) {
> +		if (gpg_verify_tag(&oid, name, flags)) {
>  			had_error = 1;
>  			continue;
>  		}
>  
>  		if (fmt_pretty)
> -			pretty_print_ref(name, sha1, fmt_pretty);
> +			pretty_print_ref(name, oid.hash, fmt_pretty);
>  	}
>  	return had_error;
>  }
> diff --git a/tag.c b/tag.c
> index 47f60ae151..7e10acfb6e 100644
> --- a/tag.c
> +++ b/tag.c
> @@ -33,7 +33,7 @@ static int run_gpg_verify(const char *buf, unsigned long size, unsigned flags)
>  	return ret;
>  }
>  
> -int gpg_verify_tag(const unsigned char *sha1, const char *name_to_report,
> +int gpg_verify_tag(const struct object_id *oid, const char *name_to_report,
>  		unsigned flags)
>  {
>  	enum object_type type;
> @@ -41,20 +41,20 @@ int gpg_verify_tag(const unsigned char *sha1, const char *name_to_report,
>  	unsigned long size;
>  	int ret;
>  
> -	type = sha1_object_info(sha1, NULL);
> +	type = sha1_object_info(oid->hash, NULL);
>  	if (type != OBJ_TAG)
>  		return error("%s: cannot verify a non-tag object of type %s.",
>  				name_to_report ?
>  				name_to_report :
> -				find_unique_abbrev(sha1, DEFAULT_ABBREV),
> +				find_unique_abbrev(oid->hash, DEFAULT_ABBREV),
>  				typename(type));
>  
> -	buf = read_sha1_file(sha1, &type, &size);
> +	buf = read_sha1_file(oid->hash, &type, &size);
>  	if (!buf)
>  		return error("%s: unable to read file.",
>  				name_to_report ?
>  				name_to_report :
> -				find_unique_abbrev(sha1, DEFAULT_ABBREV));
> +				find_unique_abbrev(oid->hash, DEFAULT_ABBREV));
>  
>  	ret = run_gpg_verify(buf, size, flags);
>  
> diff --git a/tag.h b/tag.h
> index fdfcb4a84a..d469534e82 100644
> --- a/tag.h
> +++ b/tag.h
> @@ -17,7 +17,7 @@ extern int parse_tag_buffer(struct tag *item, const void *data, unsigned long si
>  extern int parse_tag(struct tag *item);
>  extern struct object *deref_tag(struct object *, const char *, int);
>  extern struct object *deref_tag_noverify(struct object *);
> -extern int gpg_verify_tag(const unsigned char *sha1,
> +extern int gpg_verify_tag(const struct object_id *oid,
>  		const char *name_to_report, unsigned flags);
>  
>  #endif /* TAG_H */
Previous: Junio C HamanoNext: Stefan Beller
Message 4 of 10 in “commit: convert lookup_commit_graft to struct object_id”
  1. 1/2 commit: convert lookup_commit_graft to struct object_idStefan Beller, Jul 13, 2017
  2. 2/2 tag: convert gpg_verify_tag to use struct object_idStefan Beller, Jul 13, 2017
  3. Junio C HamanoJul 13, 2017
  4. Junio C HamanoJul 13, 2017
  5. Stefan BellerJul 13, 2017
  6. Junio C HamanoJul 13, 2017
  7. Stefan BellerJul 13, 2017
  8. brian m. carlsonJul 13, 2017
  9. brian m. carlsonJul 13, 2017
  10. Junio C HamanoJul 13, 2017

Read the whole thread, see it on lore, or plain text.

$ cat FOOTERMessages come from the public archive at lore.kernel.org/git, fetched every hour. The front page is chosen and written each morning by an AI editor and can be wrong; the threads themselves are the record. About and API. For agents: an MCP server at https://gitlist.dev/mcp, and any thread, story or person page as Markdown by adding .md to its URL (or sending Accept: text/markdown). Details in /llms.txt.