annotate src/core/ngx_sha1.h @ 9306:e46e1ea89ccd default tip

Upstream: $upstream_cache_age variable. The variable reflects response age, including the time spent in the cache and the upstream response age as obtained from the "Age" header. If the response wasn't cached, the variable reflects the "Age" header of the upstream response. If the intended use case is to cache responses as per HTTP/1.1 caching model, the $upstream_cache_age variable can be used to provide the "Age" header with the "add_header" directive, such as: add_header Age $upstream_cache_age; This now removes the "Age" header if it was present. Further, the "expires" directives now removes the "Age" header if it was present in the response, as the "expires" directive assumes zero age when it adds "Expires" and "Cache-Control" headers.
author Maxim Dounin <mdounin@mdounin.ru>
date Thu, 18 Jul 2024 19:39:45 +0300
parents 9eefb38f0005
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
1573
8f911d6d0d70 ngx_sha1.h
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
1
8f911d6d0d70 ngx_sha1.h
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
2 /*
8f911d6d0d70 ngx_sha1.h
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
3 * Copyright (C) Igor Sysoev
4412
d620f497c50f Copyright updated.
Maxim Konovalov <maxim@nginx.com>
parents: 1598
diff changeset
4 * Copyright (C) Nginx, Inc.
1573
8f911d6d0d70 ngx_sha1.h
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
5 */
8f911d6d0d70 ngx_sha1.h
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
6
8f911d6d0d70 ngx_sha1.h
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
7
8f911d6d0d70 ngx_sha1.h
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
8 #ifndef _NGX_SHA1_H_INCLUDED_
8f911d6d0d70 ngx_sha1.h
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
9 #define _NGX_SHA1_H_INCLUDED_
8f911d6d0d70 ngx_sha1.h
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
10
8f911d6d0d70 ngx_sha1.h
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
11
8f911d6d0d70 ngx_sha1.h
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
12 #include <ngx_config.h>
8f911d6d0d70 ngx_sha1.h
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
13 #include <ngx_core.h>
8f911d6d0d70 ngx_sha1.h
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
14
8f911d6d0d70 ngx_sha1.h
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
15
6586
1064ea81ed3a An internal SHA1 implementation.
Maxim Dounin <mdounin@mdounin.ru>
parents: 4412
diff changeset
16 typedef struct {
1064ea81ed3a An internal SHA1 implementation.
Maxim Dounin <mdounin@mdounin.ru>
parents: 4412
diff changeset
17 uint64_t bytes;
1064ea81ed3a An internal SHA1 implementation.
Maxim Dounin <mdounin@mdounin.ru>
parents: 4412
diff changeset
18 uint32_t a, b, c, d, e, f;
1064ea81ed3a An internal SHA1 implementation.
Maxim Dounin <mdounin@mdounin.ru>
parents: 4412
diff changeset
19 u_char buffer[64];
1064ea81ed3a An internal SHA1 implementation.
Maxim Dounin <mdounin@mdounin.ru>
parents: 4412
diff changeset
20 } ngx_sha1_t;
1064ea81ed3a An internal SHA1 implementation.
Maxim Dounin <mdounin@mdounin.ru>
parents: 4412
diff changeset
21
1064ea81ed3a An internal SHA1 implementation.
Maxim Dounin <mdounin@mdounin.ru>
parents: 4412
diff changeset
22
1064ea81ed3a An internal SHA1 implementation.
Maxim Dounin <mdounin@mdounin.ru>
parents: 4412
diff changeset
23 void ngx_sha1_init(ngx_sha1_t *ctx);
1064ea81ed3a An internal SHA1 implementation.
Maxim Dounin <mdounin@mdounin.ru>
parents: 4412
diff changeset
24 void ngx_sha1_update(ngx_sha1_t *ctx, const void *data, size_t size);
1064ea81ed3a An internal SHA1 implementation.
Maxim Dounin <mdounin@mdounin.ru>
parents: 4412
diff changeset
25 void ngx_sha1_final(u_char result[20], ngx_sha1_t *ctx);
1064ea81ed3a An internal SHA1 implementation.
Maxim Dounin <mdounin@mdounin.ru>
parents: 4412
diff changeset
26
1064ea81ed3a An internal SHA1 implementation.
Maxim Dounin <mdounin@mdounin.ru>
parents: 4412
diff changeset
27
1573
8f911d6d0d70 ngx_sha1.h
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
28 #endif /* _NGX_SHA1_H_INCLUDED_ */