Mercurial > hg > nginx-quic
annotate src/core/ngx_sha1.h @ 9037:e0f385521c79
Win32: non-ASCII directory names support in ngx_create_dir().
This makes it possible to create directories under prefix with non-ASCII
characters, as well as makes it possible to create directories with non-ASCII
characters when using the dav module (ticket #1433).
To ensure that the dav module operations are restricted similarly to
other file operations (in particular, short names are not allowed), the
ngx_win32_check_filename() function is used. It improved to support
checking of just dirname, and now can be used to check paths when creating
files or directories.
author | Maxim Dounin <mdounin@mdounin.ru> |
---|---|
date | Thu, 23 Feb 2023 20:49:45 +0300 |
parents | 9eefb38f0005 |
children |
rev | line source |
---|---|
1573 | 1 |
2 /* | |
3 * Copyright (C) Igor Sysoev | |
4412 | 4 * Copyright (C) Nginx, Inc. |
1573 | 5 */ |
6 | |
7 | |
8 #ifndef _NGX_SHA1_H_INCLUDED_ | |
9 #define _NGX_SHA1_H_INCLUDED_ | |
10 | |
11 | |
12 #include <ngx_config.h> | |
13 #include <ngx_core.h> | |
14 | |
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 | 28 #endif /* _NGX_SHA1_H_INCLUDED_ */ |