Compare commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
940d7620a1 | ||
|
|
d4cc6bc64c | ||
|
|
58ca2dc480 | ||
|
|
bb301f0522 | ||
|
|
59b665d639 | ||
|
|
534c2ef759 | ||
|
|
286cec465a |
@@ -8,11 +8,20 @@
|
||||
|
||||
其他地址 [my-tv](https://lyrics.run/my-tv.html)
|
||||
|
||||

|
||||

|
||||

|
||||

|
||||
|
||||
## 更新日志
|
||||
|
||||
### v1.2.6
|
||||
|
||||
* 支持安卓4.2
|
||||
* 解决部分频道无法播放的问题
|
||||
* 修复切换时有时没有恢复播放的问题
|
||||
* 左右键不再切换源
|
||||
* 增大频道信息标题尺寸,缩小与节目信息的间隔
|
||||
|
||||
### v1.2.5
|
||||
|
||||
* 美化频道信息显示
|
||||
|
||||
@@ -50,8 +50,34 @@ else ()
|
||||
${CMAKE_SOURCE_DIR}/src/main/cpp/${ANDROID_ABI}/libnative.so)
|
||||
endif ()
|
||||
|
||||
#add_library(libssl
|
||||
# STATIC
|
||||
# IMPORTED)
|
||||
#
|
||||
#set_target_properties( # Specifies the target library.
|
||||
# libssl
|
||||
#
|
||||
# # Specifies the parameter you want to define.
|
||||
# PROPERTIES IMPORTED_LOCATION
|
||||
#
|
||||
# # Provides the path to the library you want to import.
|
||||
# ${CMAKE_SOURCE_DIR}/src/main/cpp/${ANDROID_ABI}/libssl.so)
|
||||
#
|
||||
#add_library(libcrypto
|
||||
# SHARED
|
||||
# IMPORTED)
|
||||
#
|
||||
#set_target_properties( # Specifies the target library.
|
||||
# libcrypto
|
||||
#
|
||||
# # Specifies the parameter you want to define.
|
||||
# PROPERTIES IMPORTED_LOCATION
|
||||
#
|
||||
# # Provides the path to the library you want to import.
|
||||
# ${CMAKE_SOURCE_DIR}/src/main/cpp/${ANDROID_ABI}/libcrypto.so)
|
||||
|
||||
add_library(libssl
|
||||
SHARED
|
||||
STATIC
|
||||
IMPORTED)
|
||||
|
||||
set_target_properties( # Specifies the target library.
|
||||
@@ -61,10 +87,10 @@ set_target_properties( # Specifies the target library.
|
||||
PROPERTIES IMPORTED_LOCATION
|
||||
|
||||
# Provides the path to the library you want to import.
|
||||
${CMAKE_SOURCE_DIR}/src/main/cpp/${ANDROID_ABI}/libssl.so)
|
||||
${CMAKE_SOURCE_DIR}/src/main/cpp/${ANDROID_ABI}/libssl.a)
|
||||
|
||||
add_library(libcrypto
|
||||
SHARED
|
||||
STATIC
|
||||
IMPORTED)
|
||||
|
||||
set_target_properties( # Specifies the target library.
|
||||
@@ -74,7 +100,7 @@ set_target_properties( # Specifies the target library.
|
||||
PROPERTIES IMPORTED_LOCATION
|
||||
|
||||
# Provides the path to the library you want to import.
|
||||
${CMAKE_SOURCE_DIR}/src/main/cpp/${ANDROID_ABI}/libcrypto.so)
|
||||
${CMAKE_SOURCE_DIR}/src/main/cpp/${ANDROID_ABI}/libcrypto.a)
|
||||
|
||||
find_library( # Defines the name of the path variable that stores the
|
||||
# location of the NDK library.
|
||||
|
||||
@@ -13,7 +13,7 @@ android {
|
||||
|
||||
defaultConfig {
|
||||
applicationId "com.lizongying.mytv"
|
||||
minSdk 21
|
||||
minSdk 17
|
||||
targetSdk 33
|
||||
versionCode VersionCode()
|
||||
versionName VersionName()
|
||||
@@ -38,6 +38,7 @@ android {
|
||||
// libraries Gradle should build and package with your app.
|
||||
abiFilters "armeabi-v7a", "arm64-v8a"
|
||||
}
|
||||
multiDexEnabled true
|
||||
}
|
||||
|
||||
buildTypes {
|
||||
|
||||
@@ -12,6 +12,7 @@
|
||||
android:icon="@mipmap/ic_launcher"
|
||||
android:label="@string/app_name"
|
||||
android:supportsRtl="true"
|
||||
android:usesCleartextTraffic="true"
|
||||
android:theme="@style/Theme.MyTV">
|
||||
<activity
|
||||
android:keepScreenOn="true"
|
||||
|
||||
@@ -1,8 +1,8 @@
|
||||
/*
|
||||
* WARNING: do not edit!
|
||||
* Generated by Makefile from include/openssl/asn1.h.in
|
||||
* Generated by Makefile from openssl-3.1.4/include/openssl/asn1.h.in
|
||||
*
|
||||
* Copyright 1995-2023 The OpenSSL Project Authors. All Rights Reserved.
|
||||
* Copyright 1995-2022 The OpenSSL Project Authors. All Rights Reserved.
|
||||
*
|
||||
* Licensed under the Apache License 2.0 (the "License"). You may not use
|
||||
* this file except in compliance with the License. You can obtain a copy
|
||||
@@ -158,7 +158,7 @@ SKM_DEFINE_STACK_OF_INTERNAL(X509_ALGOR, X509_ALGOR, X509_ALGOR)
|
||||
|
||||
|
||||
|
||||
# define ASN1_STRING_FLAG_BITS_LEFT 0x08 /* Set if 0x07 has bits left value */
|
||||
# define ASN1_STRING_FLAG_BITS_LEFT 0x08/* Set if 0x07 has bits left value */
|
||||
/*
|
||||
* This indicates that the ASN1_STRING is not a real value but just a place
|
||||
* holder for the location where indefinite length constructed data should be
|
||||
@@ -999,8 +999,6 @@ int ASN1_TYPE_get_int_octetstring(const ASN1_TYPE *a, long *num,
|
||||
unsigned char *data, int max_len);
|
||||
|
||||
void *ASN1_item_unpack(const ASN1_STRING *oct, const ASN1_ITEM *it);
|
||||
void *ASN1_item_unpack_ex(const ASN1_STRING *oct, const ASN1_ITEM *it,
|
||||
OSSL_LIB_CTX *libctx, const char *propq);
|
||||
|
||||
ASN1_STRING *ASN1_item_pack(void *obj, const ASN1_ITEM *it,
|
||||
ASN1_OCTET_STRING **oct);
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
/*
|
||||
* WARNING: do not edit!
|
||||
* Generated by Makefile from include/openssl/asn1t.h.in
|
||||
* Generated by Makefile from openssl-3.1.4/include/openssl/asn1t.h.in
|
||||
*
|
||||
* Copyright 2000-2021 The OpenSSL Project Authors. All Rights Reserved.
|
||||
*
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright 2015-2022 The OpenSSL Project Authors. All Rights Reserved.
|
||||
* Copyright 2015-2018 The OpenSSL Project Authors. All Rights Reserved.
|
||||
*
|
||||
* Licensed under the Apache License 2.0 (the "License"). You may not use
|
||||
* this file except in compliance with the License. You can obtain a copy
|
||||
@@ -80,14 +80,6 @@ int ASYNC_WAIT_CTX_clear_fd(ASYNC_WAIT_CTX *ctx, const void *key);
|
||||
|
||||
int ASYNC_is_capable(void);
|
||||
|
||||
typedef void *(*ASYNC_stack_alloc_fn)(size_t *num);
|
||||
typedef void (*ASYNC_stack_free_fn)(void *addr);
|
||||
|
||||
int ASYNC_set_mem_functions(ASYNC_stack_alloc_fn alloc_fn,
|
||||
ASYNC_stack_free_fn free_fn);
|
||||
void ASYNC_get_mem_functions(ASYNC_stack_alloc_fn *alloc_fn,
|
||||
ASYNC_stack_free_fn *free_fn);
|
||||
|
||||
int ASYNC_start_job(ASYNC_JOB **job, ASYNC_WAIT_CTX *ctx, int *ret,
|
||||
int (*func)(void *), void *args, size_t size);
|
||||
int ASYNC_pause_job(void);
|
||||
|
||||
@@ -1,8 +1,8 @@
|
||||
/*
|
||||
* WARNING: do not edit!
|
||||
* Generated by Makefile from include/openssl/bio.h.in
|
||||
* Generated by Makefile from openssl-3.1.4/include/openssl/bio.h.in
|
||||
*
|
||||
* Copyright 1995-2023 The OpenSSL Project Authors. All Rights Reserved.
|
||||
* Copyright 1995-2022 The OpenSSL Project Authors. All Rights Reserved.
|
||||
*
|
||||
* Licensed under the Apache License 2.0 (the "License"). You may not use
|
||||
* this file except in compliance with the License. You can obtain a copy
|
||||
@@ -67,8 +67,6 @@ extern "C" {
|
||||
# define BIO_TYPE_DGRAM_SCTP (24|BIO_TYPE_SOURCE_SINK|BIO_TYPE_DESCRIPTOR)
|
||||
# endif
|
||||
# define BIO_TYPE_CORE_TO_PROV (25|BIO_TYPE_SOURCE_SINK)
|
||||
# define BIO_TYPE_DGRAM_PAIR (26|BIO_TYPE_SOURCE_SINK)
|
||||
# define BIO_TYPE_DGRAM_MEM (27|BIO_TYPE_SOURCE_SINK)
|
||||
|
||||
#define BIO_TYPE_START 128
|
||||
|
||||
@@ -173,30 +171,6 @@ extern "C" {
|
||||
# define BIO_CTRL_SET_INDENT 80
|
||||
# define BIO_CTRL_GET_INDENT 81
|
||||
|
||||
# define BIO_CTRL_DGRAM_GET_LOCAL_ADDR_CAP 82
|
||||
# define BIO_CTRL_DGRAM_GET_LOCAL_ADDR_ENABLE 83
|
||||
# define BIO_CTRL_DGRAM_SET_LOCAL_ADDR_ENABLE 84
|
||||
# define BIO_CTRL_DGRAM_GET_EFFECTIVE_CAPS 85
|
||||
# define BIO_CTRL_DGRAM_GET_CAPS 86
|
||||
# define BIO_CTRL_DGRAM_SET_CAPS 87
|
||||
# define BIO_CTRL_DGRAM_GET_NO_TRUNC 88
|
||||
# define BIO_CTRL_DGRAM_SET_NO_TRUNC 89
|
||||
|
||||
/*
|
||||
* internal BIO:
|
||||
* # define BIO_CTRL_SET_KTLS_TX_ZEROCOPY_SENDFILE 90
|
||||
*/
|
||||
|
||||
# define BIO_CTRL_GET_RPOLL_DESCRIPTOR 91
|
||||
# define BIO_CTRL_GET_WPOLL_DESCRIPTOR 92
|
||||
# define BIO_CTRL_DGRAM_DETECT_PEER_ADDR 93
|
||||
|
||||
# define BIO_DGRAM_CAP_NONE 0U
|
||||
# define BIO_DGRAM_CAP_HANDLES_SRC_ADDR (1U << 0)
|
||||
# define BIO_DGRAM_CAP_HANDLES_DST_ADDR (1U << 1)
|
||||
# define BIO_DGRAM_CAP_PROVIDES_SRC_ADDR (1U << 2)
|
||||
# define BIO_DGRAM_CAP_PROVIDES_DST_ADDR (1U << 3)
|
||||
|
||||
# ifndef OPENSSL_NO_KTLS
|
||||
# define BIO_get_ktls_send(b) \
|
||||
(BIO_ctrl(b, BIO_CTRL_GET_KTLS_SEND, 0, NULL) > 0)
|
||||
@@ -234,7 +208,7 @@ extern "C" {
|
||||
# define BIO_FLAGS_NONCLEAR_RST 0x400
|
||||
# define BIO_FLAGS_IN_EOF 0x800
|
||||
|
||||
/* the BIO FLAGS values 0x1000 to 0x8000 are reserved for internal KTLS flags */
|
||||
/* the BIO FLAGS values 0x1000 to 0x4000 are reserved for internal KTLS flags */
|
||||
|
||||
typedef union bio_addr_st BIO_ADDR;
|
||||
typedef struct bio_addrinfo_st BIO_ADDRINFO;
|
||||
@@ -282,14 +256,12 @@ void BIO_clear_flags(BIO *b, int flags);
|
||||
# define BIO_RR_ACCEPT 0x03
|
||||
|
||||
/* These are passed by the BIO callback */
|
||||
# define BIO_CB_FREE 0x01
|
||||
# define BIO_CB_READ 0x02
|
||||
# define BIO_CB_WRITE 0x03
|
||||
# define BIO_CB_PUTS 0x04
|
||||
# define BIO_CB_GETS 0x05
|
||||
# define BIO_CB_CTRL 0x06
|
||||
# define BIO_CB_RECVMMSG 0x07
|
||||
# define BIO_CB_SENDMMSG 0x08
|
||||
# define BIO_CB_FREE 0x01
|
||||
# define BIO_CB_READ 0x02
|
||||
# define BIO_CB_WRITE 0x03
|
||||
# define BIO_CB_PUTS 0x04
|
||||
# define BIO_CB_GETS 0x05
|
||||
# define BIO_CB_CTRL 0x06
|
||||
|
||||
/*
|
||||
* The callback is called before and after the underling operation, The
|
||||
@@ -390,34 +362,6 @@ struct bio_dgram_sctp_prinfo {
|
||||
};
|
||||
# endif
|
||||
|
||||
/* BIO_sendmmsg/BIO_recvmmsg-related definitions */
|
||||
typedef struct bio_msg_st {
|
||||
void *data;
|
||||
size_t data_len;
|
||||
BIO_ADDR *peer, *local;
|
||||
uint64_t flags;
|
||||
} BIO_MSG;
|
||||
|
||||
typedef struct bio_mmsg_cb_args_st {
|
||||
BIO_MSG *msg;
|
||||
size_t stride, num_msg;
|
||||
uint64_t flags;
|
||||
size_t *msgs_processed;
|
||||
} BIO_MMSG_CB_ARGS;
|
||||
|
||||
#define BIO_POLL_DESCRIPTOR_TYPE_NONE 0
|
||||
#define BIO_POLL_DESCRIPTOR_TYPE_SOCK_FD 1
|
||||
#define BIO_POLL_DESCRIPTOR_CUSTOM_START 8192
|
||||
|
||||
typedef struct bio_poll_descriptor_st {
|
||||
uint32_t type;
|
||||
union {
|
||||
int fd;
|
||||
void *custom;
|
||||
uintptr_t custom_ui;
|
||||
} value;
|
||||
} BIO_POLL_DESCRIPTOR;
|
||||
|
||||
/*
|
||||
* #define BIO_CONN_get_param_hostname BIO_ctrl
|
||||
*/
|
||||
@@ -484,17 +428,10 @@ typedef struct bio_poll_descriptor_st {
|
||||
|
||||
# define BIO_C_SET_CONNECT_MODE 155
|
||||
|
||||
# define BIO_C_SET_TFO 156 /* like BIO_C_SET_NBIO */
|
||||
|
||||
# define BIO_C_SET_SOCK_TYPE 157
|
||||
# define BIO_C_GET_SOCK_TYPE 158
|
||||
# define BIO_C_GET_DGRAM_BIO 159
|
||||
|
||||
# define BIO_set_app_data(s,arg) BIO_set_ex_data(s,0,arg)
|
||||
# define BIO_get_app_data(s) BIO_get_ex_data(s,0)
|
||||
|
||||
# define BIO_set_nbio(b,n) BIO_ctrl(b,BIO_C_SET_NBIO,(n),NULL)
|
||||
# define BIO_set_tfo(b,n) BIO_ctrl(b,BIO_C_SET_TFO,(n),NULL)
|
||||
# define BIO_set_nbio(b,n) BIO_ctrl(b,BIO_C_SET_NBIO,(n),NULL)
|
||||
|
||||
# ifndef OPENSSL_NO_SOCK
|
||||
/* IP families we support, for BIO_s_connect() and BIO_s_accept() */
|
||||
@@ -515,11 +452,7 @@ typedef struct bio_poll_descriptor_st {
|
||||
# define BIO_get_conn_port(b) ((const char *)BIO_ptr_ctrl(b,BIO_C_GET_CONNECT,1))
|
||||
# define BIO_get_conn_address(b) ((const BIO_ADDR *)BIO_ptr_ctrl(b,BIO_C_GET_CONNECT,2))
|
||||
# define BIO_get_conn_ip_family(b) BIO_ctrl(b,BIO_C_GET_CONNECT,3,NULL)
|
||||
# define BIO_get_conn_mode(b) BIO_ctrl(b,BIO_C_GET_CONNECT,4,NULL)
|
||||
# define BIO_set_conn_mode(b,n) BIO_ctrl(b,BIO_C_SET_CONNECT_MODE,(n),NULL)
|
||||
# define BIO_set_sock_type(b,t) BIO_ctrl(b,BIO_C_SET_SOCK_TYPE,(t),NULL)
|
||||
# define BIO_get_sock_type(b) BIO_ctrl(b,BIO_C_GET_SOCK_TYPE,0,NULL)
|
||||
# define BIO_get0_dgram_bio(b, p) BIO_ctrl(b,BIO_C_GET_DGRAM_BIO,0,(void *)(BIO **)(p))
|
||||
|
||||
/* BIO_s_accept() */
|
||||
# define BIO_set_accept_name(b,name) BIO_ctrl(b,BIO_C_SET_ACCEPT,0, \
|
||||
@@ -536,7 +469,6 @@ typedef struct bio_poll_descriptor_st {
|
||||
(char *)(bio))
|
||||
# define BIO_set_accept_ip_family(b,f) BIO_int_ctrl(b,BIO_C_SET_ACCEPT,4,f)
|
||||
# define BIO_get_accept_ip_family(b) BIO_ctrl(b,BIO_C_GET_ACCEPT,4,NULL)
|
||||
# define BIO_set_tfo_accept(b,n) BIO_ctrl(b,BIO_C_SET_ACCEPT,5,(n)?(void *)"a":NULL)
|
||||
|
||||
/* Aliases kept for backward compatibility */
|
||||
# define BIO_BIND_NORMAL 0
|
||||
@@ -664,30 +596,8 @@ int BIO_ctrl_reset_read_request(BIO *b);
|
||||
(int)BIO_ctrl(b, BIO_CTRL_DGRAM_GET_PEER, 0, (char *)(peer))
|
||||
# define BIO_dgram_set_peer(b,peer) \
|
||||
(int)BIO_ctrl(b, BIO_CTRL_DGRAM_SET_PEER, 0, (char *)(peer))
|
||||
# define BIO_dgram_detect_peer_addr(b,peer) \
|
||||
(int)BIO_ctrl(b, BIO_CTRL_DGRAM_DETECT_PEER_ADDR, 0, (char *)(peer))
|
||||
# define BIO_dgram_get_mtu_overhead(b) \
|
||||
(unsigned int)BIO_ctrl((b), BIO_CTRL_DGRAM_GET_MTU_OVERHEAD, 0, NULL)
|
||||
# define BIO_dgram_get_local_addr_cap(b) \
|
||||
(int)BIO_ctrl((b), BIO_CTRL_DGRAM_GET_LOCAL_ADDR_CAP, 0, NULL)
|
||||
# define BIO_dgram_get_local_addr_enable(b, penable) \
|
||||
(int)BIO_ctrl((b), BIO_CTRL_DGRAM_GET_LOCAL_ADDR_ENABLE, 0, (char *)(penable))
|
||||
# define BIO_dgram_set_local_addr_enable(b, enable) \
|
||||
(int)BIO_ctrl((b), BIO_CTRL_DGRAM_SET_LOCAL_ADDR_ENABLE, (enable), NULL)
|
||||
# define BIO_dgram_get_effective_caps(b) \
|
||||
(uint32_t)BIO_ctrl((b), BIO_CTRL_DGRAM_GET_EFFECTIVE_CAPS, 0, NULL)
|
||||
# define BIO_dgram_get_caps(b) \
|
||||
(uint32_t)BIO_ctrl((b), BIO_CTRL_DGRAM_GET_CAPS, 0, NULL)
|
||||
# define BIO_dgram_set_caps(b, caps) \
|
||||
(int)BIO_ctrl((b), BIO_CTRL_DGRAM_SET_CAPS, (long)(caps), NULL)
|
||||
# define BIO_dgram_get_no_trunc(b) \
|
||||
(unsigned int)BIO_ctrl((b), BIO_CTRL_DGRAM_GET_NO_TRUNC, 0, NULL)
|
||||
# define BIO_dgram_set_no_trunc(b, enable) \
|
||||
(int)BIO_ctrl((b), BIO_CTRL_DGRAM_SET_NO_TRUNC, (enable), NULL)
|
||||
# define BIO_dgram_get_mtu(b) \
|
||||
(unsigned int)BIO_ctrl((b), BIO_CTRL_DGRAM_GET_MTU, 0, NULL)
|
||||
# define BIO_dgram_set_mtu(b, mtu) \
|
||||
(int)BIO_ctrl((b), BIO_CTRL_DGRAM_SET_MTU, (mtu), NULL)
|
||||
|
||||
/* ctrl macros for BIO_f_prefix */
|
||||
# define BIO_set_prefix(b,p) BIO_ctrl((b), BIO_CTRL_SET_PREFIX, 0, (void *)(p))
|
||||
@@ -730,18 +640,10 @@ void BIO_vfree(BIO *a);
|
||||
int BIO_up_ref(BIO *a);
|
||||
int BIO_read(BIO *b, void *data, int dlen);
|
||||
int BIO_read_ex(BIO *b, void *data, size_t dlen, size_t *readbytes);
|
||||
__owur int BIO_recvmmsg(BIO *b, BIO_MSG *msg,
|
||||
size_t stride, size_t num_msg, uint64_t flags,
|
||||
size_t *msgs_processed);
|
||||
int BIO_gets(BIO *bp, char *buf, int size);
|
||||
int BIO_get_line(BIO *bio, char *buf, int size);
|
||||
int BIO_write(BIO *b, const void *data, int dlen);
|
||||
int BIO_write_ex(BIO *b, const void *data, size_t dlen, size_t *written);
|
||||
__owur int BIO_sendmmsg(BIO *b, BIO_MSG *msg,
|
||||
size_t stride, size_t num_msg, uint64_t flags,
|
||||
size_t *msgs_processed);
|
||||
__owur int BIO_get_rpoll_descriptor(BIO *b, BIO_POLL_DESCRIPTOR *desc);
|
||||
__owur int BIO_get_wpoll_descriptor(BIO *b, BIO_POLL_DESCRIPTOR *desc);
|
||||
int BIO_puts(BIO *bp, const char *buf);
|
||||
int BIO_indent(BIO *b, int indent, int max);
|
||||
long BIO_ctrl(BIO *bp, int cmd, long larg, void *parg);
|
||||
@@ -765,9 +667,6 @@ int BIO_nwrite0(BIO *bio, char **buf);
|
||||
int BIO_nwrite(BIO *bio, char **buf, int num);
|
||||
|
||||
const BIO_METHOD *BIO_s_mem(void);
|
||||
# ifndef OPENSSL_NO_DGRAM
|
||||
const BIO_METHOD *BIO_s_dgram_mem(void);
|
||||
# endif
|
||||
const BIO_METHOD *BIO_s_secmem(void);
|
||||
BIO *BIO_new_mem_buf(const void *buf, int len);
|
||||
# ifndef OPENSSL_NO_SOCK
|
||||
@@ -787,7 +686,6 @@ const BIO_METHOD *BIO_f_nbio_test(void);
|
||||
const BIO_METHOD *BIO_f_prefix(void);
|
||||
const BIO_METHOD *BIO_s_core(void);
|
||||
# ifndef OPENSSL_NO_DGRAM
|
||||
const BIO_METHOD *BIO_s_dgram_pair(void);
|
||||
const BIO_METHOD *BIO_s_datagram(void);
|
||||
int BIO_dgram_non_fatal_error(int error);
|
||||
BIO *BIO_new_dgram(int fd, int close_flag);
|
||||
@@ -806,7 +704,6 @@ int BIO_dgram_sctp_msg_waiting(BIO *b);
|
||||
# ifndef OPENSSL_NO_SOCK
|
||||
int BIO_sock_should_retry(int i);
|
||||
int BIO_sock_non_fatal_error(int error);
|
||||
int BIO_err_is_non_fatal(unsigned int errcode);
|
||||
int BIO_socket_wait(int fd, int for_read, time_t max_time);
|
||||
# endif
|
||||
int BIO_wait(BIO *bio, time_t max_time, unsigned int nap_milliseconds);
|
||||
@@ -829,8 +726,6 @@ int BIO_hex_string(BIO *out, int indent, int width, const void *data,
|
||||
|
||||
# ifndef OPENSSL_NO_SOCK
|
||||
BIO_ADDR *BIO_ADDR_new(void);
|
||||
int BIO_ADDR_copy(BIO_ADDR *dst, const BIO_ADDR *src);
|
||||
BIO_ADDR *BIO_ADDR_dup(const BIO_ADDR *ap);
|
||||
int BIO_ADDR_rawmake(BIO_ADDR *ap, int family,
|
||||
const void *where, size_t wherelen, unsigned short port);
|
||||
void BIO_ADDR_free(BIO_ADDR *);
|
||||
@@ -893,7 +788,6 @@ int BIO_sock_info(int sock,
|
||||
# define BIO_SOCK_KEEPALIVE 0x04
|
||||
# define BIO_SOCK_NONBLOCK 0x08
|
||||
# define BIO_SOCK_NODELAY 0x10
|
||||
# define BIO_SOCK_TFO 0x20
|
||||
|
||||
int BIO_socket(int domain, int socktype, int protocol, int options);
|
||||
int BIO_connect(int sock, const BIO_ADDR *addr, int options);
|
||||
@@ -911,11 +805,6 @@ BIO *BIO_new_fd(int fd, int close_flag);
|
||||
|
||||
int BIO_new_bio_pair(BIO **bio1, size_t writebuf1,
|
||||
BIO **bio2, size_t writebuf2);
|
||||
# ifndef OPENSSL_NO_DGRAM
|
||||
int BIO_new_bio_dgram_pair(BIO **bio1, size_t writebuf1,
|
||||
BIO **bio2, size_t writebuf2);
|
||||
# endif
|
||||
|
||||
/*
|
||||
* If successful, returns 1 and in *bio1, *bio2 two BIO pair endpoints.
|
||||
* Otherwise returns 0 and sets *bio1 and *bio2 to NULL. Size 0 uses default
|
||||
@@ -967,30 +856,18 @@ int BIO_meth_set_write(BIO_METHOD *biom,
|
||||
int (*write) (BIO *, const char *, int));
|
||||
int BIO_meth_set_write_ex(BIO_METHOD *biom,
|
||||
int (*bwrite) (BIO *, const char *, size_t, size_t *));
|
||||
int BIO_meth_set_sendmmsg(BIO_METHOD *biom,
|
||||
int (*f) (BIO *, BIO_MSG *, size_t, size_t,
|
||||
uint64_t, size_t *));
|
||||
int (*BIO_meth_get_sendmmsg(const BIO_METHOD *biom))(BIO *, BIO_MSG *,
|
||||
size_t, size_t,
|
||||
uint64_t, size_t *);
|
||||
int (*BIO_meth_get_read(const BIO_METHOD *biom)) (BIO *, char *, int);
|
||||
int (*BIO_meth_get_read_ex(const BIO_METHOD *biom)) (BIO *, char *, size_t, size_t *);
|
||||
int BIO_meth_set_read(BIO_METHOD *biom,
|
||||
int (*read) (BIO *, char *, int));
|
||||
int BIO_meth_set_read_ex(BIO_METHOD *biom,
|
||||
int (*bread) (BIO *, char *, size_t, size_t *));
|
||||
int BIO_meth_set_recvmmsg(BIO_METHOD *biom,
|
||||
int (*f) (BIO *, BIO_MSG *, size_t, size_t,
|
||||
uint64_t, size_t *));
|
||||
int (*BIO_meth_get_recvmmsg(const BIO_METHOD *biom))(BIO *, BIO_MSG *,
|
||||
size_t, size_t,
|
||||
uint64_t, size_t *);
|
||||
int (*BIO_meth_get_puts(const BIO_METHOD *biom)) (BIO *, const char *);
|
||||
int BIO_meth_set_puts(BIO_METHOD *biom,
|
||||
int (*puts) (BIO *, const char *));
|
||||
int (*BIO_meth_get_gets(const BIO_METHOD *biom)) (BIO *, char *, int);
|
||||
int BIO_meth_set_gets(BIO_METHOD *biom,
|
||||
int (*ossl_gets) (BIO *, char *, int));
|
||||
int (*gets) (BIO *, char *, int));
|
||||
long (*BIO_meth_get_ctrl(const BIO_METHOD *biom)) (BIO *, int, long, void *);
|
||||
int BIO_meth_set_ctrl(BIO_METHOD *biom,
|
||||
long (*ctrl) (BIO *, int, long, void *));
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
/*
|
||||
* Generated by util/mkerr.pl DO NOT EDIT
|
||||
* Copyright 1995-2022 The OpenSSL Project Authors. All Rights Reserved.
|
||||
* Copyright 1995-2021 The OpenSSL Project Authors. All Rights Reserved.
|
||||
*
|
||||
* Licensed under the Apache License 2.0 (the "License"). You may not use
|
||||
* this file except in compliance with the License. You can obtain a copy
|
||||
@@ -37,18 +37,14 @@
|
||||
# define BIO_R_IN_USE 123
|
||||
# define BIO_R_LENGTH_TOO_LONG 102
|
||||
# define BIO_R_LISTEN_V6_ONLY 136
|
||||
# define BIO_R_LOCAL_ADDR_NOT_AVAILABLE 111
|
||||
# define BIO_R_LOOKUP_RETURNED_NOTHING 142
|
||||
# define BIO_R_MALFORMED_HOST_OR_SERVICE 130
|
||||
# define BIO_R_NBIO_CONNECT_ERROR 110
|
||||
# define BIO_R_NON_FATAL 112
|
||||
# define BIO_R_NO_ACCEPT_ADDR_OR_SERVICE_SPECIFIED 143
|
||||
# define BIO_R_NO_HOSTNAME_OR_SERVICE_SPECIFIED 144
|
||||
# define BIO_R_NO_PORT_DEFINED 113
|
||||
# define BIO_R_NO_SUCH_FILE 128
|
||||
# define BIO_R_NULL_PARAMETER 115 /* unused */
|
||||
# define BIO_R_TFO_DISABLED 106
|
||||
# define BIO_R_TFO_NO_KERNEL_SUPPORT 108
|
||||
# define BIO_R_TRANSFER_ERROR 104
|
||||
# define BIO_R_TRANSFER_TIMEOUT 105
|
||||
# define BIO_R_UNABLE_TO_BIND_SOCKET 117
|
||||
@@ -57,7 +53,6 @@
|
||||
# define BIO_R_UNABLE_TO_LISTEN_SOCKET 119
|
||||
# define BIO_R_UNABLE_TO_NODELAY 138
|
||||
# define BIO_R_UNABLE_TO_REUSEADDR 139
|
||||
# define BIO_R_UNABLE_TO_TFO 109
|
||||
# define BIO_R_UNAVAILABLE_IP_FAMILY 145
|
||||
# define BIO_R_UNINITIALIZED 120
|
||||
# define BIO_R_UNKNOWN_INFO_TYPE 140
|
||||
@@ -66,7 +61,5 @@
|
||||
# define BIO_R_UNSUPPORTED_PROTOCOL_FAMILY 131
|
||||
# define BIO_R_WRITE_TO_READ_ONLY_BIO 126
|
||||
# define BIO_R_WSASTARTUP 122
|
||||
# define BIO_R_PORT_MISMATCH 150
|
||||
# define BIO_R_PEER_ADDR_NOT_AVAILABLE 151
|
||||
|
||||
#endif
|
||||
|
||||
@@ -241,18 +241,12 @@ void BN_clear_free(BIGNUM *a);
|
||||
BIGNUM *BN_copy(BIGNUM *a, const BIGNUM *b);
|
||||
void BN_swap(BIGNUM *a, BIGNUM *b);
|
||||
BIGNUM *BN_bin2bn(const unsigned char *s, int len, BIGNUM *ret);
|
||||
BIGNUM *BN_signed_bin2bn(const unsigned char *s, int len, BIGNUM *ret);
|
||||
int BN_bn2bin(const BIGNUM *a, unsigned char *to);
|
||||
int BN_bn2binpad(const BIGNUM *a, unsigned char *to, int tolen);
|
||||
int BN_signed_bn2bin(const BIGNUM *a, unsigned char *to, int tolen);
|
||||
BIGNUM *BN_lebin2bn(const unsigned char *s, int len, BIGNUM *ret);
|
||||
BIGNUM *BN_signed_lebin2bn(const unsigned char *s, int len, BIGNUM *ret);
|
||||
int BN_bn2lebinpad(const BIGNUM *a, unsigned char *to, int tolen);
|
||||
int BN_signed_bn2lebin(const BIGNUM *a, unsigned char *to, int tolen);
|
||||
BIGNUM *BN_native2bn(const unsigned char *s, int len, BIGNUM *ret);
|
||||
BIGNUM *BN_signed_native2bn(const unsigned char *s, int len, BIGNUM *ret);
|
||||
int BN_bn2nativepad(const BIGNUM *a, unsigned char *to, int tolen);
|
||||
int BN_signed_bn2native(const BIGNUM *a, unsigned char *to, int tolen);
|
||||
BIGNUM *BN_mpi2bn(const unsigned char *s, int len, BIGNUM *ret);
|
||||
int BN_bn2mpi(const BIGNUM *a, unsigned char *to);
|
||||
int BN_sub(BIGNUM *r, const BIGNUM *a, const BIGNUM *b);
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
/*
|
||||
* WARNING: do not edit!
|
||||
* Generated by Makefile from include/openssl/cmp.h.in
|
||||
* Generated by Makefile from openssl-3.1.4/include/openssl/cmp.h.in
|
||||
*
|
||||
* Copyright 2007-2023 The OpenSSL Project Authors. All Rights Reserved.
|
||||
* Copyright Nokia 2007-2019
|
||||
@@ -35,9 +35,7 @@
|
||||
extern "C" {
|
||||
# endif
|
||||
|
||||
# define OSSL_CMP_PVNO_2 2
|
||||
# define OSSL_CMP_PVNO_3 3
|
||||
# define OSSL_CMP_PVNO OSSL_CMP_PVNO_2 /* v2 is the default */
|
||||
# define OSSL_CMP_PVNO 2
|
||||
|
||||
/*-
|
||||
* PKIFailureInfo ::= BIT STRING {
|
||||
@@ -139,6 +137,7 @@ extern "C" {
|
||||
# if OSSL_CMP_PKIFAILUREINFO_MAX_BIT_PATTERN > INT_MAX
|
||||
# error CMP_PKIFAILUREINFO_MAX bit pattern does not fit in type int
|
||||
# endif
|
||||
|
||||
typedef ASN1_BIT_STRING OSSL_CMP_PKIFAILUREINFO;
|
||||
|
||||
# define OSSL_CMP_CTX_FAILINFO_badAlg (1 << 0)
|
||||
@@ -204,8 +203,8 @@ typedef ASN1_BIT_STRING OSSL_CMP_PKIFAILUREINFO;
|
||||
# define OSSL_CMP_PKISTATUS_revocationWarning 4
|
||||
# define OSSL_CMP_PKISTATUS_revocationNotification 5
|
||||
# define OSSL_CMP_PKISTATUS_keyUpdateWarning 6
|
||||
typedef ASN1_INTEGER OSSL_CMP_PKISTATUS;
|
||||
|
||||
typedef ASN1_INTEGER OSSL_CMP_PKISTATUS;
|
||||
DECLARE_ASN1_ITEM(OSSL_CMP_PKISTATUS)
|
||||
|
||||
# define OSSL_CMP_CERTORENCCERT_CERTIFICATE 0
|
||||
@@ -379,35 +378,18 @@ ASN1_TYPE *OSSL_CMP_ITAV_get0_value(const OSSL_CMP_ITAV *itav);
|
||||
int OSSL_CMP_ITAV_push0_stack_item(STACK_OF(OSSL_CMP_ITAV) **itav_sk_p,
|
||||
OSSL_CMP_ITAV *itav);
|
||||
void OSSL_CMP_ITAV_free(OSSL_CMP_ITAV *itav);
|
||||
|
||||
OSSL_CMP_ITAV *OSSL_CMP_ITAV_new_caCerts(const STACK_OF(X509) *caCerts);
|
||||
int OSSL_CMP_ITAV_get0_caCerts(const OSSL_CMP_ITAV *itav, STACK_OF(X509) **out);
|
||||
|
||||
OSSL_CMP_ITAV *OSSL_CMP_ITAV_new_rootCaCert(const X509 *rootCaCert);
|
||||
int OSSL_CMP_ITAV_get0_rootCaCert(const OSSL_CMP_ITAV *itav, X509 **out);
|
||||
OSSL_CMP_ITAV *OSSL_CMP_ITAV_new_rootCaKeyUpdate(const X509 *newWithNew,
|
||||
const X509 *newWithOld,
|
||||
const X509 *oldWithNew);
|
||||
int OSSL_CMP_ITAV_get0_rootCaKeyUpdate(const OSSL_CMP_ITAV *itav,
|
||||
X509 **newWithNew,
|
||||
X509 **newWithOld,
|
||||
X509 **oldWithNew);
|
||||
|
||||
void OSSL_CMP_MSG_free(OSSL_CMP_MSG *msg);
|
||||
|
||||
/* from cmp_ctx.c */
|
||||
OSSL_CMP_CTX *OSSL_CMP_CTX_new(OSSL_LIB_CTX *libctx, const char *propq);
|
||||
void OSSL_CMP_CTX_free(OSSL_CMP_CTX *ctx);
|
||||
int OSSL_CMP_CTX_reinit(OSSL_CMP_CTX *ctx);
|
||||
OSSL_LIB_CTX *OSSL_CMP_CTX_get0_libctx(const OSSL_CMP_CTX *ctx);
|
||||
const char *OSSL_CMP_CTX_get0_propq(const OSSL_CMP_CTX *ctx);
|
||||
/* CMP general options: */
|
||||
# define OSSL_CMP_OPT_LOG_VERBOSITY 0
|
||||
/* CMP transfer options: */
|
||||
# define OSSL_CMP_OPT_KEEP_ALIVE 10
|
||||
# define OSSL_CMP_OPT_MSG_TIMEOUT 11
|
||||
# define OSSL_CMP_OPT_KEEP_ALIVE 10
|
||||
# define OSSL_CMP_OPT_MSG_TIMEOUT 11
|
||||
# define OSSL_CMP_OPT_TOTAL_TIMEOUT 12
|
||||
# define OSSL_CMP_OPT_USE_TLS 13
|
||||
/* CMP request options: */
|
||||
# define OSSL_CMP_OPT_VALIDITY_DAYS 20
|
||||
# define OSSL_CMP_OPT_SUBJECTALTNAME_NODEFAULT 21
|
||||
@@ -438,11 +420,9 @@ int OSSL_CMP_CTX_set1_server(OSSL_CMP_CTX *ctx, const char *address);
|
||||
int OSSL_CMP_CTX_set_serverPort(OSSL_CMP_CTX *ctx, int port);
|
||||
int OSSL_CMP_CTX_set1_proxy(OSSL_CMP_CTX *ctx, const char *name);
|
||||
int OSSL_CMP_CTX_set1_no_proxy(OSSL_CMP_CTX *ctx, const char *names);
|
||||
# ifndef OPENSSL_NO_HTTP
|
||||
int OSSL_CMP_CTX_set_http_cb(OSSL_CMP_CTX *ctx, OSSL_HTTP_bio_cb_t cb);
|
||||
int OSSL_CMP_CTX_set_http_cb_arg(OSSL_CMP_CTX *ctx, void *arg);
|
||||
void *OSSL_CMP_CTX_get_http_cb_arg(const OSSL_CMP_CTX *ctx);
|
||||
# endif
|
||||
typedef OSSL_CMP_MSG *(*OSSL_CMP_transfer_cb_t) (OSSL_CMP_CTX *ctx,
|
||||
const OSSL_CMP_MSG *req);
|
||||
int OSSL_CMP_CTX_set_transfer_cb(OSSL_CMP_CTX *ctx, OSSL_CMP_transfer_cb_t cb);
|
||||
@@ -452,9 +432,7 @@ void *OSSL_CMP_CTX_get_transfer_cb_arg(const OSSL_CMP_CTX *ctx);
|
||||
int OSSL_CMP_CTX_set1_srvCert(OSSL_CMP_CTX *ctx, X509 *cert);
|
||||
int OSSL_CMP_CTX_set1_expected_sender(OSSL_CMP_CTX *ctx, const X509_NAME *name);
|
||||
int OSSL_CMP_CTX_set0_trustedStore(OSSL_CMP_CTX *ctx, X509_STORE *store);
|
||||
# define OSSL_CMP_CTX_set0_trusted OSSL_CMP_CTX_set0_trustedStore
|
||||
X509_STORE *OSSL_CMP_CTX_get0_trustedStore(const OSSL_CMP_CTX *ctx);
|
||||
# define OSSL_CMP_CTX_get0_trusted OSSL_CMP_CTX_get0_trustedStore
|
||||
int OSSL_CMP_CTX_set1_untrusted(OSSL_CMP_CTX *ctx, STACK_OF(X509) *certs);
|
||||
STACK_OF(X509) *OSSL_CMP_CTX_get0_untrusted(const OSSL_CMP_CTX *ctx);
|
||||
/* client authentication: */
|
||||
@@ -476,7 +454,6 @@ int OSSL_CMP_CTX_set1_extraCertsOut(OSSL_CMP_CTX *ctx,
|
||||
int OSSL_CMP_CTX_set0_newPkey(OSSL_CMP_CTX *ctx, int priv, EVP_PKEY *pkey);
|
||||
EVP_PKEY *OSSL_CMP_CTX_get0_newPkey(const OSSL_CMP_CTX *ctx, int priv);
|
||||
int OSSL_CMP_CTX_set1_issuer(OSSL_CMP_CTX *ctx, const X509_NAME *name);
|
||||
int OSSL_CMP_CTX_set1_serialNumber(OSSL_CMP_CTX *ctx, const ASN1_INTEGER *sn);
|
||||
int OSSL_CMP_CTX_set1_subjectName(OSSL_CMP_CTX *ctx, const X509_NAME *name);
|
||||
int OSSL_CMP_CTX_push1_subjectAltName(OSSL_CMP_CTX *ctx,
|
||||
const GENERAL_NAME *name);
|
||||
@@ -500,7 +477,6 @@ int OSSL_CMP_CTX_get_status(const OSSL_CMP_CTX *ctx);
|
||||
OSSL_CMP_PKIFREETEXT *OSSL_CMP_CTX_get0_statusString(const OSSL_CMP_CTX *ctx);
|
||||
int OSSL_CMP_CTX_get_failInfoCode(const OSSL_CMP_CTX *ctx);
|
||||
# define OSSL_CMP_PKISI_BUFLEN 1024
|
||||
X509 *OSSL_CMP_CTX_get0_validatedSrvCert(const OSSL_CMP_CTX *ctx);
|
||||
X509 *OSSL_CMP_CTX_get0_newCert(const OSSL_CMP_CTX *ctx);
|
||||
STACK_OF(X509) *OSSL_CMP_CTX_get1_newChain(const OSSL_CMP_CTX *ctx);
|
||||
STACK_OF(X509) *OSSL_CMP_CTX_get1_caPubs(const OSSL_CMP_CTX *ctx);
|
||||
@@ -541,10 +517,8 @@ int OSSL_CMP_validate_cert_path(const OSSL_CMP_CTX *ctx,
|
||||
X509_STORE *trusted_store, X509 *cert);
|
||||
|
||||
/* from cmp_http.c */
|
||||
# ifndef OPENSSL_NO_HTTP
|
||||
OSSL_CMP_MSG *OSSL_CMP_MSG_http_perform(OSSL_CMP_CTX *ctx,
|
||||
const OSSL_CMP_MSG *req);
|
||||
# endif
|
||||
|
||||
/* from cmp_server.c */
|
||||
typedef struct ossl_cmp_srv_ctx_st OSSL_CMP_SRV_CTX;
|
||||
@@ -616,12 +590,6 @@ int OSSL_CMP_try_certreq(OSSL_CMP_CTX *ctx, int req_type,
|
||||
int OSSL_CMP_exec_RR_ses(OSSL_CMP_CTX *ctx);
|
||||
STACK_OF(OSSL_CMP_ITAV) *OSSL_CMP_exec_GENM_ses(OSSL_CMP_CTX *ctx);
|
||||
|
||||
/* from cmp_genm.c */
|
||||
int OSSL_CMP_get1_caCerts(OSSL_CMP_CTX *ctx, STACK_OF(X509) **out);
|
||||
int OSSL_CMP_get1_rootCaKeyUpdate(OSSL_CMP_CTX *ctx,
|
||||
const X509 *oldWithOld, X509 **newWithNew,
|
||||
X509 **newWithOld, X509 **oldWithNew);
|
||||
|
||||
# ifdef __cplusplus
|
||||
}
|
||||
# endif
|
||||
|
||||
@@ -59,11 +59,8 @@
|
||||
# define CMP_R_FAILED_EXTRACTING_PUBKEY 141
|
||||
# define CMP_R_FAILURE_OBTAINING_RANDOM 110
|
||||
# define CMP_R_FAIL_INFO_OUT_OF_RANGE 129
|
||||
# define CMP_R_GETTING_GENP 192
|
||||
# define CMP_R_INVALID_ARGS 100
|
||||
# define CMP_R_INVALID_GENP 193
|
||||
# define CMP_R_INVALID_OPTION 174
|
||||
# define CMP_R_INVALID_ROOTCAKEYUPDATE 195
|
||||
# define CMP_R_MISSING_CERTID 165
|
||||
# define CMP_R_MISSING_KEY_INPUT_FOR_CREATING_PROTECTION 130
|
||||
# define CMP_R_MISSING_KEY_USAGE_DIGITALSIGNATURE 142
|
||||
@@ -97,7 +94,6 @@
|
||||
# define CMP_R_TOTAL_TIMEOUT 184
|
||||
# define CMP_R_TRANSACTIONID_UNMATCHED 152
|
||||
# define CMP_R_TRANSFER_ERROR 159
|
||||
# define CMP_R_UNCLEAN_CTX 191
|
||||
# define CMP_R_UNEXPECTED_PKIBODY 133
|
||||
# define CMP_R_UNEXPECTED_PKISTATUS 185
|
||||
# define CMP_R_UNEXPECTED_PVNO 153
|
||||
|
||||
@@ -1,8 +1,8 @@
|
||||
/*
|
||||
* WARNING: do not edit!
|
||||
* Generated by Makefile from include/openssl/cms.h.in
|
||||
* Generated by Makefile from openssl-3.1.4/include/openssl/cms.h.in
|
||||
*
|
||||
* Copyright 2008-2022 The OpenSSL Project Authors. All Rights Reserved.
|
||||
* Copyright 2008-2021 The OpenSSL Project Authors. All Rights Reserved.
|
||||
*
|
||||
* Licensed under the Apache License 2.0 (the "License"). You may not use
|
||||
* this file except in compliance with the License. You can obtain a copy
|
||||
@@ -31,10 +31,8 @@
|
||||
extern "C" {
|
||||
# endif
|
||||
|
||||
typedef struct CMS_EnvelopedData_st CMS_EnvelopedData;
|
||||
typedef struct CMS_ContentInfo_st CMS_ContentInfo;
|
||||
typedef struct CMS_SignerInfo_st CMS_SignerInfo;
|
||||
typedef struct CMS_SignedData_st CMS_SignedData;
|
||||
typedef struct CMS_CertificateChoices CMS_CertificateChoices;
|
||||
typedef struct CMS_RevocationInfoChoice_st CMS_RevocationInfoChoice;
|
||||
typedef struct CMS_RecipientInfo_st CMS_RecipientInfo;
|
||||
@@ -149,8 +147,6 @@ SKM_DEFINE_STACK_OF_INTERNAL(CMS_RevocationInfoChoice, CMS_RevocationInfoChoice,
|
||||
#define sk_CMS_RevocationInfoChoice_set_cmp_func(sk, cmp) ((sk_CMS_RevocationInfoChoice_compfunc)OPENSSL_sk_set_cmp_func(ossl_check_CMS_RevocationInfoChoice_sk_type(sk), ossl_check_CMS_RevocationInfoChoice_compfunc_type(cmp)))
|
||||
|
||||
|
||||
DECLARE_ASN1_ITEM(CMS_EnvelopedData)
|
||||
DECLARE_ASN1_ALLOC_FUNCTIONS(CMS_SignedData)
|
||||
DECLARE_ASN1_FUNCTIONS(CMS_ContentInfo)
|
||||
DECLARE_ASN1_FUNCTIONS(CMS_ReceiptRequest)
|
||||
DECLARE_ASN1_PRINT_FUNCTION(CMS_ContentInfo)
|
||||
@@ -221,16 +217,13 @@ int SMIME_write_CMS(BIO *bio, CMS_ContentInfo *cms, BIO *data, int flags);
|
||||
|
||||
int CMS_final(CMS_ContentInfo *cms, BIO *data, BIO *dcont,
|
||||
unsigned int flags);
|
||||
int CMS_final_digest(CMS_ContentInfo *cms,
|
||||
const unsigned char *md, unsigned int mdlen, BIO *dcont,
|
||||
unsigned int flags);
|
||||
|
||||
CMS_ContentInfo *CMS_sign(X509 *signcert, EVP_PKEY *pkey,
|
||||
STACK_OF(X509) *certs, BIO *data,
|
||||
unsigned int flags);
|
||||
CMS_ContentInfo *CMS_sign_ex(X509 *signcert, EVP_PKEY *pkey,
|
||||
STACK_OF(X509) *certs, BIO *data,
|
||||
unsigned int flags, OSSL_LIB_CTX *libctx,
|
||||
unsigned int flags, OSSL_LIB_CTX *ctx,
|
||||
const char *propq);
|
||||
|
||||
CMS_ContentInfo *CMS_sign_receipt(CMS_SignerInfo *si,
|
||||
@@ -240,26 +233,27 @@ CMS_ContentInfo *CMS_sign_receipt(CMS_SignerInfo *si,
|
||||
int CMS_data(CMS_ContentInfo *cms, BIO *out, unsigned int flags);
|
||||
CMS_ContentInfo *CMS_data_create(BIO *in, unsigned int flags);
|
||||
CMS_ContentInfo *CMS_data_create_ex(BIO *in, unsigned int flags,
|
||||
OSSL_LIB_CTX *libctx, const char *propq);
|
||||
OSSL_LIB_CTX *ctx, const char *propq);
|
||||
|
||||
int CMS_digest_verify(CMS_ContentInfo *cms, BIO *dcont, BIO *out,
|
||||
unsigned int flags);
|
||||
CMS_ContentInfo *CMS_digest_create(BIO *in, const EVP_MD *md,
|
||||
unsigned int flags);
|
||||
CMS_ContentInfo *CMS_digest_create_ex(BIO *in, const EVP_MD *md,
|
||||
unsigned int flags, OSSL_LIB_CTX *libctx,
|
||||
unsigned int flags, OSSL_LIB_CTX *ctx,
|
||||
const char *propq);
|
||||
|
||||
int CMS_EncryptedData_decrypt(CMS_ContentInfo *cms,
|
||||
const unsigned char *key, size_t keylen,
|
||||
BIO *dcont, BIO *out, unsigned int flags);
|
||||
|
||||
CMS_ContentInfo *CMS_EncryptedData_encrypt(BIO *in, const EVP_CIPHER *cipher,
|
||||
const unsigned char *key,
|
||||
size_t keylen, unsigned int flags);
|
||||
CMS_ContentInfo *CMS_EncryptedData_encrypt_ex(BIO *in, const EVP_CIPHER *cipher,
|
||||
const unsigned char *key,
|
||||
size_t keylen, unsigned int flags,
|
||||
OSSL_LIB_CTX *libctx,
|
||||
OSSL_LIB_CTX *ctx,
|
||||
const char *propq);
|
||||
|
||||
int CMS_EncryptedData_set1_key(CMS_ContentInfo *cms, const EVP_CIPHER *ciph,
|
||||
@@ -278,7 +272,7 @@ CMS_ContentInfo *CMS_encrypt(STACK_OF(X509) *certs, BIO *in,
|
||||
const EVP_CIPHER *cipher, unsigned int flags);
|
||||
CMS_ContentInfo *CMS_encrypt_ex(STACK_OF(X509) *certs, BIO *in,
|
||||
const EVP_CIPHER *cipher, unsigned int flags,
|
||||
OSSL_LIB_CTX *libctx, const char *propq);
|
||||
OSSL_LIB_CTX *ctx, const char *propq);
|
||||
|
||||
int CMS_decrypt(CMS_ContentInfo *cms, EVP_PKEY *pkey, X509 *cert,
|
||||
BIO *dcont, BIO *out, unsigned int flags);
|
||||
@@ -297,16 +291,12 @@ int CMS_RecipientInfo_type(CMS_RecipientInfo *ri);
|
||||
EVP_PKEY_CTX *CMS_RecipientInfo_get0_pkey_ctx(CMS_RecipientInfo *ri);
|
||||
CMS_ContentInfo *CMS_AuthEnvelopedData_create(const EVP_CIPHER *cipher);
|
||||
CMS_ContentInfo *
|
||||
CMS_AuthEnvelopedData_create_ex(const EVP_CIPHER *cipher, OSSL_LIB_CTX *libctx,
|
||||
CMS_AuthEnvelopedData_create_ex(const EVP_CIPHER *cipher, OSSL_LIB_CTX *ctx,
|
||||
const char *propq);
|
||||
CMS_ContentInfo *CMS_EnvelopedData_create(const EVP_CIPHER *cipher);
|
||||
CMS_ContentInfo *CMS_EnvelopedData_create_ex(const EVP_CIPHER *cipher,
|
||||
OSSL_LIB_CTX *libctx,
|
||||
OSSL_LIB_CTX *ctx,
|
||||
const char *propq);
|
||||
BIO *CMS_EnvelopedData_decrypt(CMS_EnvelopedData *env, BIO *detached_data,
|
||||
EVP_PKEY *pkey, X509 *cert,
|
||||
ASN1_OCTET_STRING *secret, unsigned int flags,
|
||||
OSSL_LIB_CTX *libctx, const char *propq);
|
||||
|
||||
CMS_RecipientInfo *CMS_add1_recipient_cert(CMS_ContentInfo *cms,
|
||||
X509 *recip, unsigned int flags);
|
||||
@@ -395,11 +385,6 @@ ASN1_OCTET_STRING *CMS_SignerInfo_get0_signature(CMS_SignerInfo *si);
|
||||
int CMS_SignerInfo_sign(CMS_SignerInfo *si);
|
||||
int CMS_SignerInfo_verify(CMS_SignerInfo *si);
|
||||
int CMS_SignerInfo_verify_content(CMS_SignerInfo *si, BIO *chain);
|
||||
BIO *CMS_SignedData_verify(CMS_SignedData *sd, BIO *detached_data,
|
||||
STACK_OF(X509) *scerts, X509_STORE *store,
|
||||
STACK_OF(X509) *extra, STACK_OF(X509_CRL) *crls,
|
||||
unsigned int flags,
|
||||
OSSL_LIB_CTX *libctx, const char *propq);
|
||||
|
||||
int CMS_add_smimecap(CMS_SignerInfo *si, STACK_OF(X509_ALGOR) *algs);
|
||||
int CMS_add_simple_smimecap(STACK_OF(X509_ALGOR) **algs,
|
||||
@@ -456,7 +441,7 @@ CMS_ReceiptRequest *CMS_ReceiptRequest_create0_ex(
|
||||
unsigned char *id, int idlen, int allorfirst,
|
||||
STACK_OF(GENERAL_NAMES) *receiptList,
|
||||
STACK_OF(GENERAL_NAMES) *receiptsTo,
|
||||
OSSL_LIB_CTX *libctx);
|
||||
OSSL_LIB_CTX *ctx);
|
||||
|
||||
int CMS_add1_ReceiptRequest(CMS_SignerInfo *si, CMS_ReceiptRequest *rr);
|
||||
void CMS_ReceiptRequest_get0_values(CMS_ReceiptRequest *rr,
|
||||
|
||||
@@ -86,7 +86,6 @@
|
||||
# define CMS_R_NO_PUBLIC_KEY 134
|
||||
# define CMS_R_NO_RECEIPT_REQUEST 168
|
||||
# define CMS_R_NO_SIGNERS 135
|
||||
# define CMS_R_OPERATION_UNSUPPORTED 182
|
||||
# define CMS_R_PEER_KEY_ERROR 188
|
||||
# define CMS_R_PRIVATE_KEY_DOES_NOT_MATCH_CERTIFICATE 136
|
||||
# define CMS_R_RECEIPT_DECODE_ERROR 169
|
||||
|
||||
@@ -40,20 +40,15 @@ int COMP_expand_block(COMP_CTX *ctx, unsigned char *out, int olen,
|
||||
unsigned char *in, int ilen);
|
||||
|
||||
COMP_METHOD *COMP_zlib(void);
|
||||
COMP_METHOD *COMP_zlib_oneshot(void);
|
||||
COMP_METHOD *COMP_brotli(void);
|
||||
COMP_METHOD *COMP_brotli_oneshot(void);
|
||||
COMP_METHOD *COMP_zstd(void);
|
||||
COMP_METHOD *COMP_zstd_oneshot(void);
|
||||
|
||||
#ifndef OPENSSL_NO_DEPRECATED_1_1_0
|
||||
# define COMP_zlib_cleanup() while(0) continue
|
||||
#endif
|
||||
|
||||
# ifdef OPENSSL_BIO_H
|
||||
# ifdef ZLIB
|
||||
const BIO_METHOD *BIO_f_zlib(void);
|
||||
const BIO_METHOD *BIO_f_brotli(void);
|
||||
const BIO_METHOD *BIO_f_zstd(void);
|
||||
# endif
|
||||
# endif
|
||||
|
||||
|
||||
|
||||
@@ -23,16 +23,9 @@
|
||||
/*
|
||||
* COMP reason codes.
|
||||
*/
|
||||
# define COMP_R_BROTLI_DECODE_ERROR 102
|
||||
# define COMP_R_BROTLI_ENCODE_ERROR 103
|
||||
# define COMP_R_BROTLI_NOT_SUPPORTED 104
|
||||
# define COMP_R_ZLIB_DEFLATE_ERROR 99
|
||||
# define COMP_R_ZLIB_INFLATE_ERROR 100
|
||||
# define COMP_R_ZLIB_NOT_SUPPORTED 101
|
||||
# define COMP_R_ZSTD_COMPRESS_ERROR 105
|
||||
# define COMP_R_ZSTD_DECODE_ERROR 106
|
||||
# define COMP_R_ZSTD_DECOMPRESS_ERROR 107
|
||||
# define COMP_R_ZSTD_NOT_SUPPORTED 108
|
||||
|
||||
# endif
|
||||
#endif
|
||||
|
||||
@@ -1,8 +1,8 @@
|
||||
/*
|
||||
* WARNING: do not edit!
|
||||
* Generated by Makefile from include/openssl/conf.h.in
|
||||
* Generated by Makefile from openssl-3.1.4/include/openssl/conf.h.in
|
||||
*
|
||||
* Copyright 1995-2021 The OpenSSL Project Authors. All Rights Reserved.
|
||||
* Copyright 1995-2022 The OpenSSL Project Authors. All Rights Reserved.
|
||||
*
|
||||
* Licensed under the Apache License 2.0 (the "License"). You may not use
|
||||
* this file except in compliance with the License. You can obtain a copy
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
/*
|
||||
* WARNING: do not edit!
|
||||
* Generated by configdata.pm from Configurations/common0.tmpl, Configurations/unix-Makefile.tmpl
|
||||
* Generated by configdata.pm from openssl-3.1.4/Configurations/common0.tmpl, openssl-3.1.4/Configurations/unix-Makefile.tmpl
|
||||
* via Makefile.in
|
||||
*
|
||||
* Copyright 2016-2021 The OpenSSL Project Authors. All Rights Reserved.
|
||||
@@ -27,7 +27,7 @@ extern "C" {
|
||||
* OpenSSL was configured with the following options:
|
||||
*/
|
||||
|
||||
# define OPENSSL_CONFIGURED_API 30300
|
||||
# define OPENSSL_CONFIGURED_API 30100
|
||||
# ifndef OPENSSL_RAND_SEED_OS
|
||||
# define OPENSSL_RAND_SEED_OS
|
||||
# endif
|
||||
@@ -43,11 +43,8 @@ extern "C" {
|
||||
# ifndef OPENSSL_NO_ASAN
|
||||
# define OPENSSL_NO_ASAN
|
||||
# endif
|
||||
# ifndef OPENSSL_NO_BROTLI
|
||||
# define OPENSSL_NO_BROTLI
|
||||
# endif
|
||||
# ifndef OPENSSL_NO_BROTLI_DYNAMIC
|
||||
# define OPENSSL_NO_BROTLI_DYNAMIC
|
||||
# ifndef OPENSSL_NO_ASM
|
||||
# define OPENSSL_NO_ASM
|
||||
# endif
|
||||
# ifndef OPENSSL_NO_CRYPTO_MDEBUG
|
||||
# define OPENSSL_NO_CRYPTO_MDEBUG
|
||||
@@ -97,8 +94,8 @@ extern "C" {
|
||||
# ifndef OPENSSL_NO_SSL3_METHOD
|
||||
# define OPENSSL_NO_SSL3_METHOD
|
||||
# endif
|
||||
# ifndef OPENSSL_NO_TFO
|
||||
# define OPENSSL_NO_TFO
|
||||
# ifndef OPENSSL_NO_TESTS
|
||||
# define OPENSSL_NO_TESTS
|
||||
# endif
|
||||
# ifndef OPENSSL_NO_TRACE
|
||||
# define OPENSSL_NO_TRACE
|
||||
@@ -115,21 +112,6 @@ extern "C" {
|
||||
# ifndef OPENSSL_NO_WEAK_SSL_CIPHERS
|
||||
# define OPENSSL_NO_WEAK_SSL_CIPHERS
|
||||
# endif
|
||||
# ifndef OPENSSL_NO_WINSTORE
|
||||
# define OPENSSL_NO_WINSTORE
|
||||
# endif
|
||||
# ifndef OPENSSL_NO_ZLIB
|
||||
# define OPENSSL_NO_ZLIB
|
||||
# endif
|
||||
# ifndef OPENSSL_NO_ZLIB_DYNAMIC
|
||||
# define OPENSSL_NO_ZLIB_DYNAMIC
|
||||
# endif
|
||||
# ifndef OPENSSL_NO_ZSTD
|
||||
# define OPENSSL_NO_ZSTD
|
||||
# endif
|
||||
# ifndef OPENSSL_NO_ZSTD_DYNAMIC
|
||||
# define OPENSSL_NO_ZSTD_DYNAMIC
|
||||
# endif
|
||||
# ifndef OPENSSL_NO_STATIC_ENGINE
|
||||
# define OPENSSL_NO_STATIC_ENGINE
|
||||
# endif
|
||||
@@ -142,21 +124,15 @@ extern "C" {
|
||||
* The following are cipher-specific, but are part of the public API.
|
||||
*/
|
||||
# if !defined(OPENSSL_SYS_UEFI)
|
||||
# undef BN_LLONG
|
||||
# define BN_LLONG
|
||||
/* Only one for the following should be defined */
|
||||
# define SIXTY_FOUR_BIT_LONG
|
||||
# undef SIXTY_FOUR_BIT_LONG
|
||||
# undef SIXTY_FOUR_BIT
|
||||
# undef THIRTY_TWO_BIT
|
||||
# define THIRTY_TWO_BIT
|
||||
# endif
|
||||
|
||||
# define RC4_INT unsigned char
|
||||
|
||||
# if defined(OPENSSL_NO_COMP) || (defined(OPENSSL_NO_BROTLI) && defined(OPENSSL_NO_ZSTD) && defined(OPENSSL_NO_ZLIB))
|
||||
# define OPENSSL_NO_COMP_ALG
|
||||
# else
|
||||
# undef OPENSSL_NO_COMP_ALG
|
||||
# endif
|
||||
|
||||
# ifdef __cplusplus
|
||||
}
|
||||
# endif
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright 2019-2023 The OpenSSL Project Authors. All Rights Reserved.
|
||||
* Copyright 2019-2021 The OpenSSL Project Authors. All Rights Reserved.
|
||||
*
|
||||
* Licensed under the Apache License 2.0 (the "License"). You may not use
|
||||
* this file except in compliance with the License. You can obtain a copy
|
||||
@@ -42,9 +42,6 @@ struct ossl_dispatch_st {
|
||||
void (*function)(void);
|
||||
};
|
||||
|
||||
# define OSSL_DISPATCH_END \
|
||||
{ 0, NULL }
|
||||
|
||||
/*
|
||||
* Other items, essentially an int<->pointer map element.
|
||||
*
|
||||
|
||||
@@ -300,7 +300,6 @@ OSSL_CORE_MAKE_FUNC(int, provider_self_test, (void *provctx))
|
||||
# define OSSL_FUNC_DIGEST_GETTABLE_PARAMS 11
|
||||
# define OSSL_FUNC_DIGEST_SETTABLE_CTX_PARAMS 12
|
||||
# define OSSL_FUNC_DIGEST_GETTABLE_CTX_PARAMS 13
|
||||
# define OSSL_FUNC_DIGEST_SQUEEZE 14
|
||||
|
||||
OSSL_CORE_MAKE_FUNC(void *, digest_newctx, (void *provctx))
|
||||
OSSL_CORE_MAKE_FUNC(int, digest_init, (void *dctx, const OSSL_PARAM params[]))
|
||||
@@ -309,9 +308,6 @@ OSSL_CORE_MAKE_FUNC(int, digest_update,
|
||||
OSSL_CORE_MAKE_FUNC(int, digest_final,
|
||||
(void *dctx,
|
||||
unsigned char *out, size_t *outl, size_t outsz))
|
||||
OSSL_CORE_MAKE_FUNC(int, digest_squeeze,
|
||||
(void *dctx,
|
||||
unsigned char *out, size_t *outl, size_t outsz))
|
||||
OSSL_CORE_MAKE_FUNC(int, digest_digest,
|
||||
(void *provctx, const unsigned char *in, size_t inl,
|
||||
unsigned char *out, size_t *outl, size_t outsz))
|
||||
@@ -665,14 +661,6 @@ OSSL_CORE_MAKE_FUNC(const OSSL_PARAM *, keymgmt_export_types,
|
||||
OSSL_CORE_MAKE_FUNC(void *, keymgmt_dup,
|
||||
(const void *keydata_from, int selection))
|
||||
|
||||
/* Extended import and export functions */
|
||||
# define OSSL_FUNC_KEYMGMT_IMPORT_TYPES_EX 45
|
||||
# define OSSL_FUNC_KEYMGMT_EXPORT_TYPES_EX 46
|
||||
OSSL_CORE_MAKE_FUNC(const OSSL_PARAM *, keymgmt_import_types_ex,
|
||||
(void *provctx, int selection))
|
||||
OSSL_CORE_MAKE_FUNC(const OSSL_PARAM *, keymgmt_export_types_ex,
|
||||
(void *provctx, int selection))
|
||||
|
||||
/* Key Exchange */
|
||||
|
||||
# define OSSL_FUNC_KEYEXCH_NEWCTX 1
|
||||
@@ -844,24 +832,16 @@ OSSL_CORE_MAKE_FUNC(const OSSL_PARAM *, asym_cipher_settable_ctx_params,
|
||||
# define OSSL_FUNC_KEM_GETTABLE_CTX_PARAMS 9
|
||||
# define OSSL_FUNC_KEM_SET_CTX_PARAMS 10
|
||||
# define OSSL_FUNC_KEM_SETTABLE_CTX_PARAMS 11
|
||||
# define OSSL_FUNC_KEM_AUTH_ENCAPSULATE_INIT 12
|
||||
# define OSSL_FUNC_KEM_AUTH_DECAPSULATE_INIT 13
|
||||
|
||||
OSSL_CORE_MAKE_FUNC(void *, kem_newctx, (void *provctx))
|
||||
OSSL_CORE_MAKE_FUNC(int, kem_encapsulate_init, (void *ctx, void *provkey,
|
||||
const OSSL_PARAM params[]))
|
||||
OSSL_CORE_MAKE_FUNC(int, kem_auth_encapsulate_init, (void *ctx, void *provkey,
|
||||
void *authprivkey,
|
||||
const OSSL_PARAM params[]))
|
||||
OSSL_CORE_MAKE_FUNC(int, kem_encapsulate, (void *ctx,
|
||||
unsigned char *out, size_t *outlen,
|
||||
unsigned char *secret,
|
||||
size_t *secretlen))
|
||||
OSSL_CORE_MAKE_FUNC(int, kem_decapsulate_init, (void *ctx, void *provkey,
|
||||
const OSSL_PARAM params[]))
|
||||
OSSL_CORE_MAKE_FUNC(int, kem_auth_decapsulate_init, (void *ctx, void *provkey,
|
||||
void *authpubkey,
|
||||
const OSSL_PARAM params[]))
|
||||
OSSL_CORE_MAKE_FUNC(int, kem_decapsulate, (void *ctx,
|
||||
unsigned char *out, size_t *outlen,
|
||||
const unsigned char *in, size_t inlen))
|
||||
@@ -957,8 +937,6 @@ OSSL_CORE_MAKE_FUNC(int, decoder_export_object,
|
||||
#define OSSL_FUNC_STORE_EOF 6
|
||||
#define OSSL_FUNC_STORE_CLOSE 7
|
||||
#define OSSL_FUNC_STORE_EXPORT_OBJECT 8
|
||||
#define OSSL_FUNC_STORE_DELETE 9
|
||||
#define OSSL_FUNC_STORE_OPEN_EX 10
|
||||
OSSL_CORE_MAKE_FUNC(void *, store_open, (void *provctx, const char *uri))
|
||||
OSSL_CORE_MAKE_FUNC(void *, store_attach, (void *provctx, OSSL_CORE_BIO *in))
|
||||
OSSL_CORE_MAKE_FUNC(const OSSL_PARAM *, store_settable_ctx_params,
|
||||
@@ -974,12 +952,6 @@ OSSL_CORE_MAKE_FUNC(int, store_close, (void *loaderctx))
|
||||
OSSL_CORE_MAKE_FUNC(int, store_export_object,
|
||||
(void *loaderctx, const void *objref, size_t objref_sz,
|
||||
OSSL_CALLBACK *export_cb, void *export_cbarg))
|
||||
OSSL_CORE_MAKE_FUNC(int, store_delete,
|
||||
(void *provctx, const char *uri, const OSSL_PARAM params[],
|
||||
OSSL_PASSPHRASE_CALLBACK *pw_cb, void *pw_cbarg))
|
||||
OSSL_CORE_MAKE_FUNC(void *, store_open_ex,
|
||||
(void *provctx, const char *uri, const OSSL_PARAM params[],
|
||||
OSSL_PASSPHRASE_CALLBACK *pw_cb, void *pw_cbarg))
|
||||
|
||||
# ifdef __cplusplus
|
||||
}
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
/*
|
||||
* WARNING: do not edit!
|
||||
* Generated by Makefile from include/openssl/core_names.h.in
|
||||
* Generated by Makefile from openssl-3.0.12/include/openssl/core_names.h.in
|
||||
*
|
||||
* Copyright 2019-2023 The OpenSSL Project Authors. All Rights Reserved.
|
||||
*
|
||||
|
||||
@@ -1,8 +1,8 @@
|
||||
/*-
|
||||
* WARNING: do not edit!
|
||||
* Generated by Makefile from include/openssl/crmf.h.in
|
||||
* Generated by Makefile from openssl-3.1.4/include/openssl/crmf.h.in
|
||||
*
|
||||
* Copyright 2007-2023 The OpenSSL Project Authors. All Rights Reserved.
|
||||
* Copyright 2007-2021 The OpenSSL Project Authors. All Rights Reserved.
|
||||
* Copyright Nokia 2007-2019
|
||||
* Copyright Siemens AG 2015-2019
|
||||
*
|
||||
@@ -43,8 +43,8 @@ extern "C" {
|
||||
|
||||
# define OSSL_CRMF_SUBSEQUENTMESSAGE_ENCRCERT 0
|
||||
# define OSSL_CRMF_SUBSEQUENTMESSAGE_CHALLENGERESP 1
|
||||
typedef struct ossl_crmf_encryptedvalue_st OSSL_CRMF_ENCRYPTEDVALUE;
|
||||
|
||||
typedef struct ossl_crmf_encryptedvalue_st OSSL_CRMF_ENCRYPTEDVALUE;
|
||||
DECLARE_ASN1_FUNCTIONS(OSSL_CRMF_ENCRYPTEDVALUE)
|
||||
typedef struct ossl_crmf_msg_st OSSL_CRMF_MSG;
|
||||
DECLARE_ASN1_FUNCTIONS(OSSL_CRMF_MSG)
|
||||
@@ -198,14 +198,12 @@ int OSSL_CRMF_MSGS_verify_popo(const OSSL_CRMF_MSGS *reqs,
|
||||
int rid, int acceptRAVerified,
|
||||
OSSL_LIB_CTX *libctx, const char *propq);
|
||||
OSSL_CRMF_CERTTEMPLATE *OSSL_CRMF_MSG_get0_tmpl(const OSSL_CRMF_MSG *crm);
|
||||
X509_PUBKEY
|
||||
*OSSL_CRMF_CERTTEMPLATE_get0_publicKey(const OSSL_CRMF_CERTTEMPLATE *tmpl);
|
||||
const ASN1_INTEGER
|
||||
*OSSL_CRMF_CERTTEMPLATE_get0_serialNumber(const OSSL_CRMF_CERTTEMPLATE *tmpl);
|
||||
const X509_NAME
|
||||
*OSSL_CRMF_CERTTEMPLATE_get0_subject(const OSSL_CRMF_CERTTEMPLATE *tmpl);
|
||||
const X509_NAME
|
||||
*OSSL_CRMF_CERTTEMPLATE_get0_issuer(const OSSL_CRMF_CERTTEMPLATE *tmpl);
|
||||
const ASN1_INTEGER
|
||||
*OSSL_CRMF_CERTTEMPLATE_get0_serialNumber(const OSSL_CRMF_CERTTEMPLATE *tmpl);
|
||||
X509_EXTENSIONS
|
||||
*OSSL_CRMF_CERTTEMPLATE_get0_extensions(const OSSL_CRMF_CERTTEMPLATE *tmpl);
|
||||
const X509_NAME
|
||||
|
||||
@@ -1,8 +1,8 @@
|
||||
/*
|
||||
* WARNING: do not edit!
|
||||
* Generated by Makefile from include/openssl/crypto.h.in
|
||||
* Generated by Makefile from openssl-3.1.4/include/openssl/crypto.h.in
|
||||
*
|
||||
* Copyright 1995-2023 The OpenSSL Project Authors. All Rights Reserved.
|
||||
* Copyright 1995-2022 The OpenSSL Project Authors. All Rights Reserved.
|
||||
* Copyright (c) 2002, Oracle and/or its affiliates. All rights reserved
|
||||
*
|
||||
* Licensed under the Apache License 2.0 (the "License"). You may not use
|
||||
@@ -88,7 +88,6 @@ int CRYPTO_atomic_add(int *val, int amount, int *ret, CRYPTO_RWLOCK *lock);
|
||||
int CRYPTO_atomic_or(uint64_t *val, uint64_t op, uint64_t *ret,
|
||||
CRYPTO_RWLOCK *lock);
|
||||
int CRYPTO_atomic_load(uint64_t *val, uint64_t *ret, CRYPTO_RWLOCK *lock);
|
||||
int CRYPTO_atomic_load_int(int *val, int *ret, CRYPTO_RWLOCK *lock);
|
||||
|
||||
/* No longer needed, so this is a no-op */
|
||||
#define OPENSSL_malloc_init() while(0) continue
|
||||
@@ -553,8 +552,6 @@ void OSSL_LIB_CTX_free(OSSL_LIB_CTX *);
|
||||
OSSL_LIB_CTX *OSSL_LIB_CTX_get0_global_default(void);
|
||||
OSSL_LIB_CTX *OSSL_LIB_CTX_set0_default(OSSL_LIB_CTX *libctx);
|
||||
|
||||
void OSSL_sleep(uint64_t millis);
|
||||
|
||||
# ifdef __cplusplus
|
||||
}
|
||||
# endif
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
/*
|
||||
* WARNING: do not edit!
|
||||
* Generated by Makefile from include/openssl/ct.h.in
|
||||
* Generated by Makefile from openssl-3.1.4/include/openssl/ct.h.in
|
||||
*
|
||||
* Copyright 2016-2020 The OpenSSL Project Authors. All Rights Reserved.
|
||||
*
|
||||
@@ -133,7 +133,7 @@ typedef enum {
|
||||
*/
|
||||
CT_POLICY_EVAL_CTX *CT_POLICY_EVAL_CTX_new_ex(OSSL_LIB_CTX *libctx,
|
||||
const char *propq);
|
||||
|
||||
|
||||
/*
|
||||
* The same as CT_POLICY_EVAL_CTX_new_ex() but the default library
|
||||
* context and property query string is used.
|
||||
|
||||
@@ -144,7 +144,7 @@ DECLARE_ASN1_ITEM(DHparams)
|
||||
# define DH_GENERATOR_3 3
|
||||
# define DH_GENERATOR_5 5
|
||||
|
||||
/* DH_check error codes, some of them shared with DH_check_pub_key */
|
||||
/* DH_check error codes */
|
||||
/*
|
||||
* NB: These values must align with the equivalently named macros in
|
||||
* internal/ffc.h.
|
||||
@@ -154,10 +154,10 @@ DECLARE_ASN1_ITEM(DHparams)
|
||||
# define DH_UNABLE_TO_CHECK_GENERATOR 0x04
|
||||
# define DH_NOT_SUITABLE_GENERATOR 0x08
|
||||
# define DH_CHECK_Q_NOT_PRIME 0x10
|
||||
# define DH_CHECK_INVALID_Q_VALUE 0x20 /* +DH_check_pub_key */
|
||||
# define DH_CHECK_INVALID_Q_VALUE 0x20
|
||||
# define DH_CHECK_INVALID_J_VALUE 0x40
|
||||
# define DH_MODULUS_TOO_SMALL 0x80
|
||||
# define DH_MODULUS_TOO_LARGE 0x100 /* +DH_check_pub_key */
|
||||
# define DH_MODULUS_TOO_LARGE 0x100
|
||||
|
||||
/* DH_check_pub_key error codes */
|
||||
# define DH_CHECK_PUBKEY_TOO_SMALL 0x01
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
/*
|
||||
* Generated by util/mkerr.pl DO NOT EDIT
|
||||
* Copyright 1995-2023 The OpenSSL Project Authors. All Rights Reserved.
|
||||
* Copyright 1995-2021 The OpenSSL Project Authors. All Rights Reserved.
|
||||
*
|
||||
* Licensed under the Apache License 2.0 (the "License"). You may not use
|
||||
* this file except in compliance with the License. You can obtain a copy
|
||||
@@ -40,7 +40,6 @@
|
||||
# define DH_R_INVALID_PARAMETER_NID 114
|
||||
# define DH_R_INVALID_PUBKEY 102
|
||||
# define DH_R_INVALID_SECRET 128
|
||||
# define DH_R_INVALID_SIZE 129
|
||||
# define DH_R_KDF_PARAMETER_ERROR 112
|
||||
# define DH_R_KEYS_NOT_SET 108
|
||||
# define DH_R_MISSING_PUBKEY 125
|
||||
@@ -51,7 +50,6 @@
|
||||
# define DH_R_NO_PRIVATE_VALUE 100
|
||||
# define DH_R_PARAMETER_ENCODING_ERROR 105
|
||||
# define DH_R_PEER_KEY_ERROR 111
|
||||
# define DH_R_Q_TOO_LARGE 130
|
||||
# define DH_R_SHARED_INFO_ERROR 113
|
||||
# define DH_R_UNABLE_TO_CHECK_GENERATOR 121
|
||||
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright 1995-2021 The OpenSSL Project Authors. All Rights Reserved.
|
||||
* Copyright 1995-2022 The OpenSSL Project Authors. All Rights Reserved.
|
||||
*
|
||||
* Licensed under the Apache License 2.0 (the "License"). You may not use
|
||||
* this file except in compliance with the License. You can obtain a copy
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright 1995-2023 The OpenSSL Project Authors. All Rights Reserved.
|
||||
* Copyright 1995-2022 The OpenSSL Project Authors. All Rights Reserved.
|
||||
*
|
||||
* Licensed under the Apache License 2.0 (the "License"). You may not use
|
||||
* this file except in compliance with the License. You can obtain a copy
|
||||
@@ -89,7 +89,7 @@ extern "C" {
|
||||
|
||||
/*
|
||||
* DLL settings. This part is a bit tough, because it's up to the
|
||||
* application implementer how he or she will link the application, so it
|
||||
* application implementor how he or she will link the application, so it
|
||||
* requires some macro to be used.
|
||||
*/
|
||||
# ifdef OPENSSL_SYS_WINDOWS
|
||||
|
||||
@@ -22,15 +22,7 @@
|
||||
*/
|
||||
|
||||
# if defined(OPENSSL_SYS_WINDOWS)
|
||||
# if !defined(_WINSOCKAPI_)
|
||||
/*
|
||||
* winsock2.h defines _WINSOCK2API_ and both winsock2.h and winsock.h define
|
||||
* _WINSOCKAPI_. Both of these provide struct timeval. Don't include
|
||||
* winsock2.h if either header has been included to avoid breakage with
|
||||
* applications that prefer to use <winsock.h> over <winsock2.h>.
|
||||
*/
|
||||
# include <winsock2.h>
|
||||
# endif
|
||||
# include <winsock2.h>
|
||||
# else
|
||||
# include <sys/time.h>
|
||||
# endif
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright 2002-2023 The OpenSSL Project Authors. All Rights Reserved.
|
||||
* Copyright 2002-2022 The OpenSSL Project Authors. All Rights Reserved.
|
||||
* Copyright (c) 2002, Oracle and/or its affiliates. All rights reserved
|
||||
*
|
||||
* Licensed under the Apache License 2.0 (the "License"). You may not use
|
||||
@@ -460,22 +460,6 @@ EC_GROUP *EC_GROUP_new_curve_GF2m(const BIGNUM *p, const BIGNUM *a,
|
||||
EC_GROUP *EC_GROUP_new_from_params(const OSSL_PARAM params[],
|
||||
OSSL_LIB_CTX *libctx, const char *propq);
|
||||
|
||||
/**
|
||||
* Creates an OSSL_PARAM array with the parameters describing the given
|
||||
* EC_GROUP.
|
||||
* The resulting parameters may contain an explicit or a named curve depending
|
||||
* on the EC_GROUP.
|
||||
* \param group pointer to the EC_GROUP object
|
||||
* \param libctx The associated library context or NULL for the default
|
||||
* context
|
||||
* \param propq A property query string
|
||||
* \param bnctx BN_CTX object (optional)
|
||||
* \return newly created OSSL_PARAM array with the parameters
|
||||
* describing the given EC_GROUP or NULL if an error occurred
|
||||
*/
|
||||
OSSL_PARAM *EC_GROUP_to_params(const EC_GROUP *group, OSSL_LIB_CTX *libctx,
|
||||
const char *propq, BN_CTX *bnctx);
|
||||
|
||||
/**
|
||||
* Creates a EC_GROUP object with a curve specified by a NID
|
||||
* \param libctx The associated library context or NULL for the default
|
||||
@@ -1127,7 +1111,7 @@ OSSL_DEPRECATEDIN_3_0 int EC_KEY_check_key(const EC_KEY *key);
|
||||
|
||||
/** Indicates if an EC_KEY can be used for signing.
|
||||
* \param eckey the EC_KEY object
|
||||
* \return 1 if can sign and 0 otherwise.
|
||||
* \return 1 if can can sign and 0 otherwise.
|
||||
*/
|
||||
OSSL_DEPRECATEDIN_3_0 int EC_KEY_can_sign(const EC_KEY *eckey);
|
||||
|
||||
@@ -1303,7 +1287,7 @@ OSSL_DEPRECATEDIN_3_0 int EC_KEY_set_method(EC_KEY *key, const EC_KEY_METHOD *me
|
||||
OSSL_DEPRECATEDIN_3_0 EC_KEY *EC_KEY_new_method(ENGINE *engine);
|
||||
|
||||
/** The old name for ecdh_KDF_X9_63
|
||||
* The ECDH KDF specification has been mistakenly attributed to ANSI X9.62,
|
||||
* The ECDH KDF specification has been mistakingly attributed to ANSI X9.62,
|
||||
* it is actually specified in ANSI X9.63.
|
||||
* This identifier is retained for backwards compatibility
|
||||
*/
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright 1995-2023 The OpenSSL Project Authors. All Rights Reserved.
|
||||
* Copyright 1995-2022 The OpenSSL Project Authors. All Rights Reserved.
|
||||
*
|
||||
* Licensed under the Apache License 2.0 (the "License"). You may not use
|
||||
* this file except in compliance with the License. You can obtain a copy
|
||||
@@ -496,13 +496,6 @@ int ERR_get_next_error_library(void);
|
||||
int ERR_set_mark(void);
|
||||
int ERR_pop_to_mark(void);
|
||||
int ERR_clear_last_mark(void);
|
||||
int ERR_count_to_mark(void);
|
||||
|
||||
ERR_STATE *OSSL_ERR_STATE_new(void);
|
||||
void OSSL_ERR_STATE_save(ERR_STATE *es);
|
||||
void OSSL_ERR_STATE_save_to_mark(ERR_STATE *es);
|
||||
void OSSL_ERR_STATE_restore(const ERR_STATE *es);
|
||||
void OSSL_ERR_STATE_free(ERR_STATE *es);
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
/*
|
||||
* WARNING: do not edit!
|
||||
* Generated by Makefile from include/openssl/ess.h.in
|
||||
* Generated by Makefile from openssl-3.1.4/include/openssl/ess.h.in
|
||||
*
|
||||
* Copyright 2019-2021 The OpenSSL Project Authors. All Rights Reserved.
|
||||
*
|
||||
|
||||
@@ -35,7 +35,6 @@
|
||||
# define EVP_MAX_KEY_LENGTH 64
|
||||
# define EVP_MAX_IV_LENGTH 16
|
||||
# define EVP_MAX_BLOCK_LENGTH 32
|
||||
# define EVP_MAX_AEAD_TAG_LENGTH 16
|
||||
|
||||
# define PKCS5_SALT_LEN 8
|
||||
/* Default PKCS#5 iteration count */
|
||||
@@ -229,8 +228,7 @@ int (*EVP_MD_meth_get_ctrl(const EVP_MD *md))(EVP_MD_CTX *ctx, int cmd,
|
||||
* if the following flag is set.
|
||||
*/
|
||||
# define EVP_MD_CTX_FLAG_FINALISE 0x0200
|
||||
/* NOTE: 0x0400 and 0x0800 are reserved for internal usage */
|
||||
|
||||
/* NOTE: 0x0400 is reserved for internal usage */
|
||||
# ifndef OPENSSL_NO_DEPRECATED_3_0
|
||||
OSSL_DEPRECATEDIN_3_0
|
||||
EVP_CIPHER *EVP_CIPHER_meth_new(int cipher_type, int block_size, int key_len);
|
||||
@@ -310,7 +308,6 @@ OSSL_DEPRECATEDIN_3_0 int
|
||||
# define EVP_CIPH_WRAP_MODE 0x10002
|
||||
# define EVP_CIPH_OCB_MODE 0x10003
|
||||
# define EVP_CIPH_SIV_MODE 0x10004
|
||||
# define EVP_CIPH_GCM_SIV_MODE 0x10005
|
||||
# define EVP_CIPH_MODE 0xF0007
|
||||
/* Set if variable length cipher */
|
||||
# define EVP_CIPH_VARIABLE_LENGTH 0x8
|
||||
@@ -677,7 +674,7 @@ void BIO_set_md(BIO *, const EVP_MD *md);
|
||||
# define BIO_get_cipher_status(b) BIO_ctrl(b,BIO_C_GET_CIPHER_STATUS,0,NULL)
|
||||
# define BIO_get_cipher_ctx(b,c_pp) BIO_ctrl(b,BIO_C_GET_CIPHER_CTX,0,(c_pp))
|
||||
|
||||
__owur int EVP_Cipher(EVP_CIPHER_CTX *c,
|
||||
/*__owur*/ int EVP_Cipher(EVP_CIPHER_CTX *c,
|
||||
unsigned char *out,
|
||||
const unsigned char *in, unsigned int inl);
|
||||
|
||||
@@ -729,10 +726,8 @@ __owur int EVP_MD_CTX_copy(EVP_MD_CTX *out, const EVP_MD_CTX *in);
|
||||
__owur int EVP_DigestInit(EVP_MD_CTX *ctx, const EVP_MD *type);
|
||||
__owur int EVP_DigestFinal(EVP_MD_CTX *ctx, unsigned char *md,
|
||||
unsigned int *s);
|
||||
__owur int EVP_DigestFinalXOF(EVP_MD_CTX *ctx, unsigned char *out,
|
||||
size_t outlen);
|
||||
__owur int EVP_DigestSqueeze(EVP_MD_CTX *ctx, unsigned char *out,
|
||||
size_t outlen);
|
||||
__owur int EVP_DigestFinalXOF(EVP_MD_CTX *ctx, unsigned char *md,
|
||||
size_t len);
|
||||
|
||||
__owur EVP_MD *EVP_MD_fetch(OSSL_LIB_CTX *ctx, const char *algorithm,
|
||||
const char *properties);
|
||||
@@ -757,7 +752,7 @@ int EVP_CIPHER_CTX_test_flags(const EVP_CIPHER_CTX *ctx, int flags);
|
||||
|
||||
__owur int EVP_EncryptInit(EVP_CIPHER_CTX *ctx, const EVP_CIPHER *cipher,
|
||||
const unsigned char *key, const unsigned char *iv);
|
||||
__owur int EVP_EncryptInit_ex(EVP_CIPHER_CTX *ctx,
|
||||
/*__owur*/ int EVP_EncryptInit_ex(EVP_CIPHER_CTX *ctx,
|
||||
const EVP_CIPHER *cipher, ENGINE *impl,
|
||||
const unsigned char *key,
|
||||
const unsigned char *iv);
|
||||
@@ -765,16 +760,16 @@ __owur int EVP_EncryptInit_ex2(EVP_CIPHER_CTX *ctx, const EVP_CIPHER *cipher,
|
||||
const unsigned char *key,
|
||||
const unsigned char *iv,
|
||||
const OSSL_PARAM params[]);
|
||||
__owur int EVP_EncryptUpdate(EVP_CIPHER_CTX *ctx, unsigned char *out,
|
||||
/*__owur*/ int EVP_EncryptUpdate(EVP_CIPHER_CTX *ctx, unsigned char *out,
|
||||
int *outl, const unsigned char *in, int inl);
|
||||
__owur int EVP_EncryptFinal_ex(EVP_CIPHER_CTX *ctx, unsigned char *out,
|
||||
/*__owur*/ int EVP_EncryptFinal_ex(EVP_CIPHER_CTX *ctx, unsigned char *out,
|
||||
int *outl);
|
||||
__owur int EVP_EncryptFinal(EVP_CIPHER_CTX *ctx, unsigned char *out,
|
||||
/*__owur*/ int EVP_EncryptFinal(EVP_CIPHER_CTX *ctx, unsigned char *out,
|
||||
int *outl);
|
||||
|
||||
__owur int EVP_DecryptInit(EVP_CIPHER_CTX *ctx, const EVP_CIPHER *cipher,
|
||||
const unsigned char *key, const unsigned char *iv);
|
||||
__owur int EVP_DecryptInit_ex(EVP_CIPHER_CTX *ctx,
|
||||
/*__owur*/ int EVP_DecryptInit_ex(EVP_CIPHER_CTX *ctx,
|
||||
const EVP_CIPHER *cipher, ENGINE *impl,
|
||||
const unsigned char *key,
|
||||
const unsigned char *iv);
|
||||
@@ -782,17 +777,17 @@ __owur int EVP_DecryptInit_ex2(EVP_CIPHER_CTX *ctx, const EVP_CIPHER *cipher,
|
||||
const unsigned char *key,
|
||||
const unsigned char *iv,
|
||||
const OSSL_PARAM params[]);
|
||||
__owur int EVP_DecryptUpdate(EVP_CIPHER_CTX *ctx, unsigned char *out,
|
||||
/*__owur*/ int EVP_DecryptUpdate(EVP_CIPHER_CTX *ctx, unsigned char *out,
|
||||
int *outl, const unsigned char *in, int inl);
|
||||
__owur int EVP_DecryptFinal(EVP_CIPHER_CTX *ctx, unsigned char *outm,
|
||||
int *outl);
|
||||
__owur int EVP_DecryptFinal_ex(EVP_CIPHER_CTX *ctx, unsigned char *outm,
|
||||
/*__owur*/ int EVP_DecryptFinal_ex(EVP_CIPHER_CTX *ctx, unsigned char *outm,
|
||||
int *outl);
|
||||
|
||||
__owur int EVP_CipherInit(EVP_CIPHER_CTX *ctx, const EVP_CIPHER *cipher,
|
||||
const unsigned char *key, const unsigned char *iv,
|
||||
int enc);
|
||||
__owur int EVP_CipherInit_ex(EVP_CIPHER_CTX *ctx,
|
||||
/*__owur*/ int EVP_CipherInit_ex(EVP_CIPHER_CTX *ctx,
|
||||
const EVP_CIPHER *cipher, ENGINE *impl,
|
||||
const unsigned char *key,
|
||||
const unsigned char *iv, int enc);
|
||||
@@ -826,18 +821,18 @@ __owur int EVP_DigestVerify(EVP_MD_CTX *ctx, const unsigned char *sigret,
|
||||
size_t siglen, const unsigned char *tbs,
|
||||
size_t tbslen);
|
||||
|
||||
__owur int EVP_DigestSignInit_ex(EVP_MD_CTX *ctx, EVP_PKEY_CTX **pctx,
|
||||
int EVP_DigestSignInit_ex(EVP_MD_CTX *ctx, EVP_PKEY_CTX **pctx,
|
||||
const char *mdname, OSSL_LIB_CTX *libctx,
|
||||
const char *props, EVP_PKEY *pkey,
|
||||
const OSSL_PARAM params[]);
|
||||
__owur int EVP_DigestSignInit(EVP_MD_CTX *ctx, EVP_PKEY_CTX **pctx,
|
||||
/*__owur*/ int EVP_DigestSignInit(EVP_MD_CTX *ctx, EVP_PKEY_CTX **pctx,
|
||||
const EVP_MD *type, ENGINE *e,
|
||||
EVP_PKEY *pkey);
|
||||
__owur int EVP_DigestSignUpdate(EVP_MD_CTX *ctx, const void *data, size_t dsize);
|
||||
int EVP_DigestSignUpdate(EVP_MD_CTX *ctx, const void *data, size_t dsize);
|
||||
__owur int EVP_DigestSignFinal(EVP_MD_CTX *ctx, unsigned char *sigret,
|
||||
size_t *siglen);
|
||||
|
||||
__owur int EVP_DigestVerifyInit_ex(EVP_MD_CTX *ctx, EVP_PKEY_CTX **pctx,
|
||||
int EVP_DigestVerifyInit_ex(EVP_MD_CTX *ctx, EVP_PKEY_CTX **pctx,
|
||||
const char *mdname, OSSL_LIB_CTX *libctx,
|
||||
const char *props, EVP_PKEY *pkey,
|
||||
const OSSL_PARAM params[]);
|
||||
@@ -1932,17 +1927,14 @@ int EVP_PKEY_derive_set_peer(EVP_PKEY_CTX *ctx, EVP_PKEY *peer);
|
||||
int EVP_PKEY_derive(EVP_PKEY_CTX *ctx, unsigned char *key, size_t *keylen);
|
||||
|
||||
int EVP_PKEY_encapsulate_init(EVP_PKEY_CTX *ctx, const OSSL_PARAM params[]);
|
||||
int EVP_PKEY_auth_encapsulate_init(EVP_PKEY_CTX *ctx, EVP_PKEY *authpriv,
|
||||
const OSSL_PARAM params[]);
|
||||
int EVP_PKEY_encapsulate(EVP_PKEY_CTX *ctx,
|
||||
unsigned char *wrappedkey, size_t *wrappedkeylen,
|
||||
unsigned char *genkey, size_t *genkeylen);
|
||||
int EVP_PKEY_decapsulate_init(EVP_PKEY_CTX *ctx, const OSSL_PARAM params[]);
|
||||
int EVP_PKEY_auth_decapsulate_init(EVP_PKEY_CTX *ctx, EVP_PKEY *authpub,
|
||||
const OSSL_PARAM params[]);
|
||||
int EVP_PKEY_decapsulate(EVP_PKEY_CTX *ctx,
|
||||
unsigned char *unwrapped, size_t *unwrappedlen,
|
||||
const unsigned char *wrapped, size_t wrappedlen);
|
||||
|
||||
typedef int EVP_PKEY_gen_cb(EVP_PKEY_CTX *ctx);
|
||||
|
||||
int EVP_PKEY_fromdata_init(EVP_PKEY_CTX *ctx);
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
/*
|
||||
* Generated by util/mkerr.pl DO NOT EDIT
|
||||
* Copyright 1995-2023 The OpenSSL Project Authors. All Rights Reserved.
|
||||
* Copyright 1995-2021 The OpenSSL Project Authors. All Rights Reserved.
|
||||
*
|
||||
* Licensed under the Apache License 2.0 (the "License"). You may not use
|
||||
* this file except in compliance with the License. You can obtain a copy
|
||||
@@ -110,14 +110,11 @@
|
||||
# define EVP_R_UNABLE_TO_GET_RANDOM_STRENGTH 216
|
||||
# define EVP_R_UNABLE_TO_LOCK_CONTEXT 211
|
||||
# define EVP_R_UNABLE_TO_SET_CALLBACKS 217
|
||||
# define EVP_R_UNKNOWN_BITS 166
|
||||
# define EVP_R_UNKNOWN_CIPHER 160
|
||||
# define EVP_R_UNKNOWN_DIGEST 161
|
||||
# define EVP_R_UNKNOWN_KEY_TYPE 207
|
||||
# define EVP_R_UNKNOWN_MAX_SIZE 167
|
||||
# define EVP_R_UNKNOWN_OPTION 169
|
||||
# define EVP_R_UNKNOWN_PBE_ALGORITHM 121
|
||||
# define EVP_R_UNKNOWN_SECURITY_BITS 168
|
||||
# define EVP_R_UNSUPPORTED_ALGORITHM 156
|
||||
# define EVP_R_UNSUPPORTED_CIPHER 107
|
||||
# define EVP_R_UNSUPPORTED_KEYLENGTH 123
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
/*
|
||||
* WARNING: do not edit!
|
||||
* Generated by Makefile from include/openssl/fipskey.h.in
|
||||
* Generated by Makefile from openssl-3.1.4/include/openssl/fipskey.h.in
|
||||
*
|
||||
* Copyright 2020-2021 The OpenSSL Project Authors. All Rights Reserved.
|
||||
*
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright 2000-2023 The OpenSSL Project Authors. All Rights Reserved.
|
||||
* Copyright 2000-2021 The OpenSSL Project Authors. All Rights Reserved.
|
||||
* Copyright Siemens AG 2018-2020
|
||||
*
|
||||
* Licensed under the Apache License 2.0 (the "License"). You may not use
|
||||
@@ -33,8 +33,6 @@ extern "C" {
|
||||
# define OPENSSL_HTTP_PROXY "HTTP_PROXY"
|
||||
# define OPENSSL_HTTPS_PROXY "HTTPS_PROXY"
|
||||
|
||||
# ifndef OPENSSL_NO_HTTP
|
||||
|
||||
#define OSSL_HTTP_DEFAULT_MAX_LINE_LEN (4 * 1024)
|
||||
#define OSSL_HTTP_DEFAULT_MAX_RESP_LEN (100 * 1024)
|
||||
|
||||
@@ -105,8 +103,6 @@ int OSSL_HTTP_parse_url(const char *url, int *pssl, char **puser, char **phost,
|
||||
const char *OSSL_HTTP_adapt_proxy(const char *proxy, const char *no_proxy,
|
||||
const char *server, int use_ssl);
|
||||
|
||||
|
||||
# endif /* !defined(OPENSSL_NO_HTTP) */
|
||||
# ifdef __cplusplus
|
||||
}
|
||||
# endif
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright 1995-2021 The OpenSSL Project Authors. All Rights Reserved.
|
||||
* Copyright 1995-2022 The OpenSSL Project Authors. All Rights Reserved.
|
||||
*
|
||||
* Licensed under the Apache License 2.0 (the "License"). You may not use
|
||||
* this file except in compliance with the License. You can obtain a copy
|
||||
|
||||
@@ -158,7 +158,7 @@
|
||||
/*
|
||||
* Define macros for deprecation and simulated removal purposes.
|
||||
*
|
||||
* The macros OSSL_DEPRECATEDIN_{major}_{minor} are always defined for
|
||||
* The macros OSSL_DEPRECATED_{major}_{minor} are always defined for
|
||||
* all OpenSSL versions we care for. They can be used as attributes
|
||||
* in function declarations where appropriate.
|
||||
*
|
||||
@@ -169,7 +169,6 @@
|
||||
* 'no-deprecated'.
|
||||
*/
|
||||
|
||||
# undef OPENSSL_NO_DEPRECATED_3_1
|
||||
# undef OPENSSL_NO_DEPRECATED_3_0
|
||||
# undef OPENSSL_NO_DEPRECATED_1_1_1
|
||||
# undef OPENSSL_NO_DEPRECATED_1_1_0
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
* WARNING: do not edit!
|
||||
* Generated by crypto/objects/objects.pl
|
||||
*
|
||||
* Copyright 2000-2023 The OpenSSL Project Authors. All Rights Reserved.
|
||||
* Copyright 2000-2021 The OpenSSL Project Authors. All Rights Reserved.
|
||||
* Licensed under the Apache License 2.0 (the "License"). You may not use
|
||||
* this file except in compliance with the License. You can obtain a copy
|
||||
* in the file LICENSE in the source distribution or at
|
||||
@@ -886,14 +886,6 @@
|
||||
#define NID_id_ct_signedChecklist 1247
|
||||
#define OBJ_id_ct_signedChecklist OBJ_id_smime_ct,48L
|
||||
|
||||
#define SN_id_ct_ASPA "id-ct-ASPA"
|
||||
#define NID_id_ct_ASPA 1250
|
||||
#define OBJ_id_ct_ASPA OBJ_id_smime_ct,49L
|
||||
|
||||
#define SN_id_ct_signedTAL "id-ct-signedTAL"
|
||||
#define NID_id_ct_signedTAL 1284
|
||||
#define OBJ_id_ct_signedTAL OBJ_id_smime_ct,50L
|
||||
|
||||
#define SN_id_smime_aa_receiptRequest "id-smime-aa-receiptRequest"
|
||||
#define NID_id_smime_aa_receiptRequest 212
|
||||
#define OBJ_id_smime_aa_receiptRequest OBJ_id_smime_aa,1L
|
||||
@@ -1010,22 +1002,10 @@
|
||||
#define NID_id_smime_aa_dvcs_dvc 240
|
||||
#define OBJ_id_smime_aa_dvcs_dvc OBJ_id_smime_aa,29L
|
||||
|
||||
#define SN_id_aa_ets_attrCertificateRefs "id-aa-ets-attrCertificateRefs"
|
||||
#define NID_id_aa_ets_attrCertificateRefs 1261
|
||||
#define OBJ_id_aa_ets_attrCertificateRefs OBJ_id_smime_aa,44L
|
||||
|
||||
#define SN_id_aa_ets_attrRevocationRefs "id-aa-ets-attrRevocationRefs"
|
||||
#define NID_id_aa_ets_attrRevocationRefs 1262
|
||||
#define OBJ_id_aa_ets_attrRevocationRefs OBJ_id_smime_aa,45L
|
||||
|
||||
#define SN_id_smime_aa_signingCertificateV2 "id-smime-aa-signingCertificateV2"
|
||||
#define NID_id_smime_aa_signingCertificateV2 1086
|
||||
#define OBJ_id_smime_aa_signingCertificateV2 OBJ_id_smime_aa,47L
|
||||
|
||||
#define SN_id_aa_ets_archiveTimestampV2 "id-aa-ets-archiveTimestampV2"
|
||||
#define NID_id_aa_ets_archiveTimestampV2 1280
|
||||
#define OBJ_id_aa_ets_archiveTimestampV2 OBJ_id_smime_aa,48L
|
||||
|
||||
#define SN_id_smime_alg_ESDHwith3DES "id-smime-alg-ESDHwith3DES"
|
||||
#define NID_id_smime_alg_ESDHwith3DES 241
|
||||
#define OBJ_id_smime_alg_ESDHwith3DES OBJ_id_smime_alg,1L
|
||||
@@ -1102,17 +1082,15 @@
|
||||
#define NID_localKeyID 157
|
||||
#define OBJ_localKeyID OBJ_pkcs9,21L
|
||||
|
||||
#define OBJ_ms_corp 1L,3L,6L,1L,4L,1L,311L
|
||||
|
||||
#define SN_ms_csp_name "CSPName"
|
||||
#define LN_ms_csp_name "Microsoft CSP Name"
|
||||
#define NID_ms_csp_name 417
|
||||
#define OBJ_ms_csp_name OBJ_ms_corp,17L,1L
|
||||
#define OBJ_ms_csp_name 1L,3L,6L,1L,4L,1L,311L,17L,1L
|
||||
|
||||
#define SN_LocalKeySet "LocalKeySet"
|
||||
#define LN_LocalKeySet "Microsoft Local Key set"
|
||||
#define NID_LocalKeySet 856
|
||||
#define OBJ_LocalKeySet OBJ_ms_corp,17L,2L
|
||||
#define OBJ_LocalKeySet 1L,3L,6L,1L,4L,1L,311L,17L,2L
|
||||
|
||||
#define OBJ_certTypes OBJ_pkcs9,22L
|
||||
|
||||
@@ -1130,10 +1108,6 @@
|
||||
#define NID_x509Crl 160
|
||||
#define OBJ_x509Crl OBJ_crlTypes,1L
|
||||
|
||||
#define SN_id_aa_CMSAlgorithmProtection "id-aa-CMSAlgorithmProtection"
|
||||
#define NID_id_aa_CMSAlgorithmProtection 1263
|
||||
#define OBJ_id_aa_CMSAlgorithmProtection OBJ_pkcs9,52L
|
||||
|
||||
#define OBJ_pkcs12 OBJ_pkcs,12L
|
||||
|
||||
#define OBJ_pkcs12_pbeids OBJ_pkcs12,1L
|
||||
@@ -1243,10 +1217,6 @@
|
||||
#define NID_SM2_with_SM3 1204
|
||||
#define OBJ_SM2_with_SM3 OBJ_sm_scheme,501L
|
||||
|
||||
#define LN_hmacWithSM3 "hmacWithSM3"
|
||||
#define NID_hmacWithSM3 1281
|
||||
#define OBJ_hmacWithSM3 OBJ_sm3,3L,1L
|
||||
|
||||
#define LN_hmacWithSHA224 "hmacWithSHA224"
|
||||
#define NID_hmacWithSHA224 798
|
||||
#define OBJ_hmacWithSHA224 OBJ_rsadsi,2L,8L
|
||||
@@ -1330,62 +1300,42 @@
|
||||
#define SN_ms_ext_req "msExtReq"
|
||||
#define LN_ms_ext_req "Microsoft Extension Request"
|
||||
#define NID_ms_ext_req 171
|
||||
#define OBJ_ms_ext_req OBJ_ms_corp,2L,1L,14L
|
||||
#define OBJ_ms_ext_req 1L,3L,6L,1L,4L,1L,311L,2L,1L,14L
|
||||
|
||||
#define SN_ms_code_ind "msCodeInd"
|
||||
#define LN_ms_code_ind "Microsoft Individual Code Signing"
|
||||
#define NID_ms_code_ind 134
|
||||
#define OBJ_ms_code_ind OBJ_ms_corp,2L,1L,21L
|
||||
#define OBJ_ms_code_ind 1L,3L,6L,1L,4L,1L,311L,2L,1L,21L
|
||||
|
||||
#define SN_ms_code_com "msCodeCom"
|
||||
#define LN_ms_code_com "Microsoft Commercial Code Signing"
|
||||
#define NID_ms_code_com 135
|
||||
#define OBJ_ms_code_com OBJ_ms_corp,2L,1L,22L
|
||||
#define OBJ_ms_code_com 1L,3L,6L,1L,4L,1L,311L,2L,1L,22L
|
||||
|
||||
#define SN_ms_ctl_sign "msCTLSign"
|
||||
#define LN_ms_ctl_sign "Microsoft Trust List Signing"
|
||||
#define NID_ms_ctl_sign 136
|
||||
#define OBJ_ms_ctl_sign OBJ_ms_corp,10L,3L,1L
|
||||
#define OBJ_ms_ctl_sign 1L,3L,6L,1L,4L,1L,311L,10L,3L,1L
|
||||
|
||||
#define SN_ms_sgc "msSGC"
|
||||
#define LN_ms_sgc "Microsoft Server Gated Crypto"
|
||||
#define NID_ms_sgc 137
|
||||
#define OBJ_ms_sgc OBJ_ms_corp,10L,3L,3L
|
||||
#define OBJ_ms_sgc 1L,3L,6L,1L,4L,1L,311L,10L,3L,3L
|
||||
|
||||
#define SN_ms_efs "msEFS"
|
||||
#define LN_ms_efs "Microsoft Encrypted File System"
|
||||
#define NID_ms_efs 138
|
||||
#define OBJ_ms_efs OBJ_ms_corp,10L,3L,4L
|
||||
#define OBJ_ms_efs 1L,3L,6L,1L,4L,1L,311L,10L,3L,4L
|
||||
|
||||
#define SN_ms_smartcard_login "msSmartcardLogin"
|
||||
#define LN_ms_smartcard_login "Microsoft Smartcard Login"
|
||||
#define NID_ms_smartcard_login 648
|
||||
#define OBJ_ms_smartcard_login OBJ_ms_corp,20L,2L,2L
|
||||
#define OBJ_ms_smartcard_login 1L,3L,6L,1L,4L,1L,311L,20L,2L,2L
|
||||
|
||||
#define SN_ms_upn "msUPN"
|
||||
#define LN_ms_upn "Microsoft User Principal Name"
|
||||
#define NID_ms_upn 649
|
||||
#define OBJ_ms_upn OBJ_ms_corp,20L,2L,3L
|
||||
|
||||
#define SN_ms_ntds_sec_ext "ms-ntds-sec-ext"
|
||||
#define LN_ms_ntds_sec_ext "Microsoft NTDS CA Extension"
|
||||
#define NID_ms_ntds_sec_ext 1292
|
||||
#define OBJ_ms_ntds_sec_ext OBJ_ms_corp,25L,2L
|
||||
|
||||
#define SN_ms_ntds_obj_sid "ms-ntds-obj-sid"
|
||||
#define LN_ms_ntds_obj_sid "Microsoft NTDS AD objectSid"
|
||||
#define NID_ms_ntds_obj_sid 1291
|
||||
#define OBJ_ms_ntds_obj_sid OBJ_ms_corp,25L,2L,1L
|
||||
|
||||
#define SN_ms_cert_templ "ms-cert-templ"
|
||||
#define LN_ms_cert_templ "Microsoft certificate template"
|
||||
#define NID_ms_cert_templ 1293
|
||||
#define OBJ_ms_cert_templ OBJ_ms_corp,21L,7L
|
||||
|
||||
#define SN_ms_app_policies "ms-app-policies"
|
||||
#define LN_ms_app_policies "Microsoft Application Policies Extension"
|
||||
#define NID_ms_app_policies 1294
|
||||
#define OBJ_ms_app_policies OBJ_ms_corp,21L,10L
|
||||
#define OBJ_ms_upn 1L,3L,6L,1L,4L,1L,311L,20L,2L,3L
|
||||
|
||||
#define SN_idea_cbc "IDEA-CBC"
|
||||
#define LN_idea_cbc "idea-cbc"
|
||||
@@ -1553,18 +1503,6 @@
|
||||
#define NID_id_mod_cmp2000 284
|
||||
#define OBJ_id_mod_cmp2000 OBJ_id_pkix_mod,16L
|
||||
|
||||
#define SN_id_mod_cmp2000_02 "id-mod-cmp2000-02"
|
||||
#define NID_id_mod_cmp2000_02 1251
|
||||
#define OBJ_id_mod_cmp2000_02 OBJ_id_pkix_mod,50L
|
||||
|
||||
#define SN_id_mod_cmp2021_88 "id-mod-cmp2021-88"
|
||||
#define NID_id_mod_cmp2021_88 1252
|
||||
#define OBJ_id_mod_cmp2021_88 OBJ_id_pkix_mod,99L
|
||||
|
||||
#define SN_id_mod_cmp2021_02 "id-mod-cmp2021-02"
|
||||
#define NID_id_mod_cmp2021_02 1253
|
||||
#define OBJ_id_mod_cmp2021_02 OBJ_id_pkix_mod,100L
|
||||
|
||||
#define SN_info_access "authorityInfoAccess"
|
||||
#define LN_info_access "Authority Information Access"
|
||||
#define NID_info_access 177
|
||||
@@ -1845,22 +1783,6 @@
|
||||
#define NID_id_it_certReqTemplate 1225
|
||||
#define OBJ_id_it_certReqTemplate OBJ_id_it,19L
|
||||
|
||||
#define SN_id_it_rootCaCert "id-it-rootCaCert"
|
||||
#define NID_id_it_rootCaCert 1254
|
||||
#define OBJ_id_it_rootCaCert OBJ_id_it,20L
|
||||
|
||||
#define SN_id_it_certProfile "id-it-certProfile"
|
||||
#define NID_id_it_certProfile 1255
|
||||
#define OBJ_id_it_certProfile OBJ_id_it,21L
|
||||
|
||||
#define SN_id_it_crlStatusList "id-it-crlStatusList"
|
||||
#define NID_id_it_crlStatusList 1256
|
||||
#define OBJ_id_it_crlStatusList OBJ_id_it,22L
|
||||
|
||||
#define SN_id_it_crls "id-it-crls"
|
||||
#define NID_id_it_crls 1257
|
||||
#define OBJ_id_it_crls OBJ_id_it,23L
|
||||
|
||||
#define SN_id_regCtrl "id-regCtrl"
|
||||
#define NID_id_regCtrl 313
|
||||
#define OBJ_id_regCtrl OBJ_id_pkip,1L
|
||||
@@ -1893,18 +1815,6 @@
|
||||
#define NID_id_regCtrl_protocolEncrKey 320
|
||||
#define OBJ_id_regCtrl_protocolEncrKey OBJ_id_regCtrl,6L
|
||||
|
||||
#define SN_id_regCtrl_altCertTemplate "id-regCtrl-altCertTemplate"
|
||||
#define NID_id_regCtrl_altCertTemplate 1258
|
||||
#define OBJ_id_regCtrl_altCertTemplate OBJ_id_regCtrl,7L
|
||||
|
||||
#define SN_id_regCtrl_algId "id-regCtrl-algId"
|
||||
#define NID_id_regCtrl_algId 1259
|
||||
#define OBJ_id_regCtrl_algId OBJ_id_regCtrl,11L
|
||||
|
||||
#define SN_id_regCtrl_rsaKeyLen "id-regCtrl-rsaKeyLen"
|
||||
#define NID_id_regCtrl_rsaKeyLen 1260
|
||||
#define OBJ_id_regCtrl_rsaKeyLen OBJ_id_regCtrl,12L
|
||||
|
||||
#define SN_id_regInfo_utf8Pairs "id-regInfo-utf8Pairs"
|
||||
#define NID_id_regInfo_utf8Pairs 321
|
||||
#define OBJ_id_regInfo_utf8Pairs OBJ_id_regInfo,1L
|
||||
@@ -2739,56 +2649,11 @@
|
||||
#define NID_ext_key_usage 126
|
||||
#define OBJ_ext_key_usage OBJ_id_ce,37L
|
||||
|
||||
#define SN_authority_attribute_identifier "authorityAttributeIdentifier"
|
||||
#define LN_authority_attribute_identifier "X509v3 Authority Attribute Identifier"
|
||||
#define NID_authority_attribute_identifier 1295
|
||||
#define OBJ_authority_attribute_identifier OBJ_id_ce,38L
|
||||
|
||||
#define SN_role_spec_cert_identifier "roleSpecCertIdentifier"
|
||||
#define LN_role_spec_cert_identifier "X509v3 Role Specification Certificate Identifier"
|
||||
#define NID_role_spec_cert_identifier 1296
|
||||
#define OBJ_role_spec_cert_identifier OBJ_id_ce,39L
|
||||
|
||||
#define SN_basic_att_constraints "basicAttConstraints"
|
||||
#define LN_basic_att_constraints "X509v3 Basic Attribute Certificate Constraints"
|
||||
#define NID_basic_att_constraints 1297
|
||||
#define OBJ_basic_att_constraints OBJ_id_ce,41L
|
||||
|
||||
#define SN_delegated_name_constraints "delegatedNameConstraints"
|
||||
#define LN_delegated_name_constraints "X509v3 Delegated Name Constraints"
|
||||
#define NID_delegated_name_constraints 1298
|
||||
#define OBJ_delegated_name_constraints OBJ_id_ce,42L
|
||||
|
||||
#define SN_time_specification "timeSpecification"
|
||||
#define LN_time_specification "X509v3 Time Specification"
|
||||
#define NID_time_specification 1299
|
||||
#define OBJ_time_specification OBJ_id_ce,43L
|
||||
|
||||
#define SN_freshest_crl "freshestCRL"
|
||||
#define LN_freshest_crl "X509v3 Freshest CRL"
|
||||
#define NID_freshest_crl 857
|
||||
#define OBJ_freshest_crl OBJ_id_ce,46L
|
||||
|
||||
#define SN_attribute_descriptor "attributeDescriptor"
|
||||
#define LN_attribute_descriptor "X509v3 Attribute Descriptor"
|
||||
#define NID_attribute_descriptor 1300
|
||||
#define OBJ_attribute_descriptor OBJ_id_ce,48L
|
||||
|
||||
#define SN_user_notice "userNotice"
|
||||
#define LN_user_notice "X509v3 User Notice"
|
||||
#define NID_user_notice 1301
|
||||
#define OBJ_user_notice OBJ_id_ce,49L
|
||||
|
||||
#define SN_soa_identifier "sOAIdentifier"
|
||||
#define LN_soa_identifier "X509v3 Source of Authority Identifier"
|
||||
#define NID_soa_identifier 1302
|
||||
#define OBJ_soa_identifier OBJ_id_ce,50L
|
||||
|
||||
#define SN_acceptable_cert_policies "acceptableCertPolicies"
|
||||
#define LN_acceptable_cert_policies "X509v3 Acceptable Certification Policies"
|
||||
#define NID_acceptable_cert_policies 1303
|
||||
#define OBJ_acceptable_cert_policies OBJ_id_ce,52L
|
||||
|
||||
#define SN_inhibit_any_policy "inhibitAnyPolicy"
|
||||
#define LN_inhibit_any_policy "X509v3 Inhibit Any Policy"
|
||||
#define NID_inhibit_any_policy 748
|
||||
@@ -2804,86 +2669,6 @@
|
||||
#define NID_no_rev_avail 403
|
||||
#define OBJ_no_rev_avail OBJ_id_ce,56L
|
||||
|
||||
#define SN_acceptable_privilege_policies "acceptablePrivPolicies"
|
||||
#define LN_acceptable_privilege_policies "X509v3 Acceptable Privilege Policies"
|
||||
#define NID_acceptable_privilege_policies 1304
|
||||
#define OBJ_acceptable_privilege_policies OBJ_id_ce,57L
|
||||
|
||||
#define SN_indirect_issuer "indirectIssuer"
|
||||
#define LN_indirect_issuer "X509v3 Indirect Issuer"
|
||||
#define NID_indirect_issuer 1305
|
||||
#define OBJ_indirect_issuer OBJ_id_ce,61L
|
||||
|
||||
#define SN_no_assertion "noAssertion"
|
||||
#define LN_no_assertion "X509v3 No Assertion"
|
||||
#define NID_no_assertion 1306
|
||||
#define OBJ_no_assertion OBJ_id_ce,62L
|
||||
|
||||
#define SN_id_aa_issuing_distribution_point "aAissuingDistributionPoint"
|
||||
#define LN_id_aa_issuing_distribution_point "X509v3 Attribute Authority Issuing Distribution Point"
|
||||
#define NID_id_aa_issuing_distribution_point 1307
|
||||
#define OBJ_id_aa_issuing_distribution_point OBJ_id_ce,63L
|
||||
|
||||
#define SN_issued_on_behalf_of "issuedOnBehalfOf"
|
||||
#define LN_issued_on_behalf_of "X509v3 Issued On Behalf Of"
|
||||
#define NID_issued_on_behalf_of 1308
|
||||
#define OBJ_issued_on_behalf_of OBJ_id_ce,64L
|
||||
|
||||
#define SN_single_use "singleUse"
|
||||
#define LN_single_use "X509v3 Single Use"
|
||||
#define NID_single_use 1309
|
||||
#define OBJ_single_use OBJ_id_ce,65L
|
||||
|
||||
#define SN_group_ac "groupAC"
|
||||
#define LN_group_ac "X509v3 Group Attribute Certificate"
|
||||
#define NID_group_ac 1310
|
||||
#define OBJ_group_ac OBJ_id_ce,66L
|
||||
|
||||
#define SN_allowed_attribute_assignments "allowedAttributeAssignments"
|
||||
#define LN_allowed_attribute_assignments "X509v3 Allowed Attribute Assignments"
|
||||
#define NID_allowed_attribute_assignments 1311
|
||||
#define OBJ_allowed_attribute_assignments OBJ_id_ce,67L
|
||||
|
||||
#define SN_attribute_mappings "attributeMappings"
|
||||
#define LN_attribute_mappings "X509v3 Attribute Mappings"
|
||||
#define NID_attribute_mappings 1312
|
||||
#define OBJ_attribute_mappings OBJ_id_ce,68L
|
||||
|
||||
#define SN_holder_name_constraints "holderNameConstraints"
|
||||
#define LN_holder_name_constraints "X509v3 Holder Name Constraints"
|
||||
#define NID_holder_name_constraints 1313
|
||||
#define OBJ_holder_name_constraints OBJ_id_ce,69L
|
||||
|
||||
#define SN_authorization_validation "authorizationValidation"
|
||||
#define LN_authorization_validation "X509v3 Authorization Validation"
|
||||
#define NID_authorization_validation 1314
|
||||
#define OBJ_authorization_validation OBJ_id_ce,70L
|
||||
|
||||
#define SN_prot_restrict "protRestrict"
|
||||
#define LN_prot_restrict "X509v3 Protocol Restriction"
|
||||
#define NID_prot_restrict 1315
|
||||
#define OBJ_prot_restrict OBJ_id_ce,71L
|
||||
|
||||
#define SN_subject_alt_public_key_info "subjectAltPublicKeyInfo"
|
||||
#define LN_subject_alt_public_key_info "X509v3 Subject Alternative Public Key Info"
|
||||
#define NID_subject_alt_public_key_info 1316
|
||||
#define OBJ_subject_alt_public_key_info OBJ_id_ce,72L
|
||||
|
||||
#define SN_alt_signature_algorithm "altSignatureAlgorithm"
|
||||
#define LN_alt_signature_algorithm "X509v3 Alternative Signature Algorithm"
|
||||
#define NID_alt_signature_algorithm 1317
|
||||
#define OBJ_alt_signature_algorithm OBJ_id_ce,73L
|
||||
|
||||
#define SN_alt_signature_value "altSignatureValue"
|
||||
#define LN_alt_signature_value "X509v3 Alternative Signature Value"
|
||||
#define NID_alt_signature_value 1318
|
||||
#define OBJ_alt_signature_value OBJ_id_ce,74L
|
||||
|
||||
#define SN_associated_information "associatedInformation"
|
||||
#define LN_associated_information "X509v3 Associated Information"
|
||||
#define NID_associated_information 1319
|
||||
#define OBJ_associated_information OBJ_id_ce,75L
|
||||
|
||||
#define SN_anyExtendedKeyUsage "anyExtendedKeyUsage"
|
||||
#define LN_anyExtendedKeyUsage "Any Extended Key Usage"
|
||||
#define NID_anyExtendedKeyUsage 910
|
||||
@@ -3435,70 +3220,6 @@
|
||||
#define NID_hold_instruction_reject 433
|
||||
#define OBJ_hold_instruction_reject OBJ_holdInstruction,3L
|
||||
|
||||
#define SN_itu_t_identified_organization "itu-t-identified-organization"
|
||||
#define NID_itu_t_identified_organization 1264
|
||||
#define OBJ_itu_t_identified_organization OBJ_itu_t,4L
|
||||
|
||||
#define SN_etsi "etsi"
|
||||
#define NID_etsi 1265
|
||||
#define OBJ_etsi OBJ_itu_t_identified_organization,0L
|
||||
|
||||
#define SN_electronic_signature_standard "electronic-signature-standard"
|
||||
#define NID_electronic_signature_standard 1266
|
||||
#define OBJ_electronic_signature_standard OBJ_etsi,1733L
|
||||
|
||||
#define SN_ess_attributes "ess-attributes"
|
||||
#define NID_ess_attributes 1267
|
||||
#define OBJ_ess_attributes OBJ_electronic_signature_standard,2L
|
||||
|
||||
#define SN_id_aa_ets_mimeType "id-aa-ets-mimeType"
|
||||
#define NID_id_aa_ets_mimeType 1268
|
||||
#define OBJ_id_aa_ets_mimeType OBJ_ess_attributes,1L
|
||||
|
||||
#define SN_id_aa_ets_longTermValidation "id-aa-ets-longTermValidation"
|
||||
#define NID_id_aa_ets_longTermValidation 1269
|
||||
#define OBJ_id_aa_ets_longTermValidation OBJ_ess_attributes,2L
|
||||
|
||||
#define SN_id_aa_ets_SignaturePolicyDocument "id-aa-ets-SignaturePolicyDocument"
|
||||
#define NID_id_aa_ets_SignaturePolicyDocument 1270
|
||||
#define OBJ_id_aa_ets_SignaturePolicyDocument OBJ_ess_attributes,3L
|
||||
|
||||
#define SN_id_aa_ets_archiveTimestampV3 "id-aa-ets-archiveTimestampV3"
|
||||
#define NID_id_aa_ets_archiveTimestampV3 1271
|
||||
#define OBJ_id_aa_ets_archiveTimestampV3 OBJ_ess_attributes,4L
|
||||
|
||||
#define SN_id_aa_ATSHashIndex "id-aa-ATSHashIndex"
|
||||
#define NID_id_aa_ATSHashIndex 1272
|
||||
#define OBJ_id_aa_ATSHashIndex OBJ_ess_attributes,5L
|
||||
|
||||
#define SN_cades "cades"
|
||||
#define NID_cades 1273
|
||||
#define OBJ_cades OBJ_etsi,19122L
|
||||
|
||||
#define SN_cades_attributes "cades-attributes"
|
||||
#define NID_cades_attributes 1274
|
||||
#define OBJ_cades_attributes OBJ_cades,1L
|
||||
|
||||
#define SN_id_aa_ets_signerAttrV2 "id-aa-ets-signerAttrV2"
|
||||
#define NID_id_aa_ets_signerAttrV2 1275
|
||||
#define OBJ_id_aa_ets_signerAttrV2 OBJ_cades_attributes,1L
|
||||
|
||||
#define SN_id_aa_ets_sigPolicyStore "id-aa-ets-sigPolicyStore"
|
||||
#define NID_id_aa_ets_sigPolicyStore 1276
|
||||
#define OBJ_id_aa_ets_sigPolicyStore OBJ_cades_attributes,3L
|
||||
|
||||
#define SN_id_aa_ATSHashIndex_v2 "id-aa-ATSHashIndex-v2"
|
||||
#define NID_id_aa_ATSHashIndex_v2 1277
|
||||
#define OBJ_id_aa_ATSHashIndex_v2 OBJ_cades_attributes,4L
|
||||
|
||||
#define SN_id_aa_ATSHashIndex_v3 "id-aa-ATSHashIndex-v3"
|
||||
#define NID_id_aa_ATSHashIndex_v3 1278
|
||||
#define OBJ_id_aa_ATSHashIndex_v3 OBJ_cades_attributes,5L
|
||||
|
||||
#define SN_signedAssertion "signedAssertion"
|
||||
#define NID_signedAssertion 1279
|
||||
#define OBJ_signedAssertion OBJ_cades_attributes,6L
|
||||
|
||||
#define SN_data "data"
|
||||
#define NID_data 434
|
||||
#define OBJ_data OBJ_itu_t,9L
|
||||
@@ -5231,21 +4952,6 @@
|
||||
#define NID_sm4_ctr 1139
|
||||
#define OBJ_sm4_ctr OBJ_sm_scheme,104L,7L
|
||||
|
||||
#define SN_sm4_gcm "SM4-GCM"
|
||||
#define LN_sm4_gcm "sm4-gcm"
|
||||
#define NID_sm4_gcm 1248
|
||||
#define OBJ_sm4_gcm OBJ_sm_scheme,104L,8L
|
||||
|
||||
#define SN_sm4_ccm "SM4-CCM"
|
||||
#define LN_sm4_ccm "sm4-ccm"
|
||||
#define NID_sm4_ccm 1249
|
||||
#define OBJ_sm4_ccm OBJ_sm_scheme,104L,9L
|
||||
|
||||
#define SN_sm4_xts "SM4-XTS"
|
||||
#define LN_sm4_xts "sm4-xts"
|
||||
#define NID_sm4_xts 1290
|
||||
#define OBJ_sm4_xts OBJ_sm_scheme,104L,10L
|
||||
|
||||
#define SN_hmac "HMAC"
|
||||
#define LN_hmac "hmac"
|
||||
#define NID_hmac 855
|
||||
@@ -5323,9 +5029,6 @@
|
||||
#define NID_brainpoolP256r1 927
|
||||
#define OBJ_brainpoolP256r1 1L,3L,36L,3L,3L,2L,8L,1L,1L,7L
|
||||
|
||||
#define SN_brainpoolP256r1tls13 "brainpoolP256r1tls13"
|
||||
#define NID_brainpoolP256r1tls13 1285
|
||||
|
||||
#define SN_brainpoolP256t1 "brainpoolP256t1"
|
||||
#define NID_brainpoolP256t1 928
|
||||
#define OBJ_brainpoolP256t1 1L,3L,36L,3L,3L,2L,8L,1L,1L,8L
|
||||
@@ -5342,9 +5045,6 @@
|
||||
#define NID_brainpoolP384r1 931
|
||||
#define OBJ_brainpoolP384r1 1L,3L,36L,3L,3L,2L,8L,1L,1L,11L
|
||||
|
||||
#define SN_brainpoolP384r1tls13 "brainpoolP384r1tls13"
|
||||
#define NID_brainpoolP384r1tls13 1286
|
||||
|
||||
#define SN_brainpoolP384t1 "brainpoolP384t1"
|
||||
#define NID_brainpoolP384t1 932
|
||||
#define OBJ_brainpoolP384t1 1L,3L,36L,3L,3L,2L,8L,1L,1L,12L
|
||||
@@ -5353,9 +5053,6 @@
|
||||
#define NID_brainpoolP512r1 933
|
||||
#define OBJ_brainpoolP512r1 1L,3L,36L,3L,3L,2L,8L,1L,1L,13L
|
||||
|
||||
#define SN_brainpoolP512r1tls13 "brainpoolP512r1tls13"
|
||||
#define NID_brainpoolP512r1tls13 1287
|
||||
|
||||
#define SN_brainpoolP512t1 "brainpoolP512t1"
|
||||
#define NID_brainpoolP512t1 934
|
||||
#define OBJ_brainpoolP512t1 1L,3L,36L,3L,3L,2L,8L,1L,1L,14L
|
||||
@@ -5433,17 +5130,17 @@
|
||||
#define SN_jurisdictionLocalityName "jurisdictionL"
|
||||
#define LN_jurisdictionLocalityName "jurisdictionLocalityName"
|
||||
#define NID_jurisdictionLocalityName 955
|
||||
#define OBJ_jurisdictionLocalityName OBJ_ms_corp,60L,2L,1L,1L
|
||||
#define OBJ_jurisdictionLocalityName 1L,3L,6L,1L,4L,1L,311L,60L,2L,1L,1L
|
||||
|
||||
#define SN_jurisdictionStateOrProvinceName "jurisdictionST"
|
||||
#define LN_jurisdictionStateOrProvinceName "jurisdictionStateOrProvinceName"
|
||||
#define NID_jurisdictionStateOrProvinceName 956
|
||||
#define OBJ_jurisdictionStateOrProvinceName OBJ_ms_corp,60L,2L,1L,2L
|
||||
#define OBJ_jurisdictionStateOrProvinceName 1L,3L,6L,1L,4L,1L,311L,60L,2L,1L,2L
|
||||
|
||||
#define SN_jurisdictionCountryName "jurisdictionC"
|
||||
#define LN_jurisdictionCountryName "jurisdictionCountryName"
|
||||
#define NID_jurisdictionCountryName 957
|
||||
#define OBJ_jurisdictionCountryName OBJ_ms_corp,60L,2L,1L,3L
|
||||
#define OBJ_jurisdictionCountryName 1L,3L,6L,1L,4L,1L,311L,60L,2L,1L,3L
|
||||
|
||||
#define SN_id_scrypt "id-scrypt"
|
||||
#define LN_id_scrypt "scrypt"
|
||||
@@ -5735,24 +5432,6 @@
|
||||
#define LN_aes_256_siv "aes-256-siv"
|
||||
#define NID_aes_256_siv 1200
|
||||
|
||||
#define SN_oracle "oracle-organization"
|
||||
#define LN_oracle "Oracle organization"
|
||||
#define NID_oracle 1282
|
||||
#define OBJ_oracle OBJ_joint_iso_itu_t,16L,840L,1L,113894L
|
||||
|
||||
#define SN_oracle_jdk_trustedkeyusage "oracle-jdk-trustedkeyusage"
|
||||
#define LN_oracle_jdk_trustedkeyusage "Trusted key usage (Oracle)"
|
||||
#define NID_oracle_jdk_trustedkeyusage 1283
|
||||
#define OBJ_oracle_jdk_trustedkeyusage OBJ_oracle,746875L,1L,1L
|
||||
|
||||
#define SN_brotli "brotli"
|
||||
#define LN_brotli "Brotli compression"
|
||||
#define NID_brotli 1288
|
||||
|
||||
#define SN_zstd "zstd"
|
||||
#define LN_zstd "Zstandard compression"
|
||||
#define NID_zstd 1289
|
||||
|
||||
#endif /* OPENSSL_OBJ_MAC_H */
|
||||
|
||||
#ifndef OPENSSL_NO_DEPRECATED_3_0
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
/*
|
||||
* WARNING: do not edit!
|
||||
* Generated by Makefile from include/openssl/ocsp.h.in
|
||||
* Generated by Makefile from openssl-3.1.4/include/openssl/ocsp.h.in
|
||||
*
|
||||
* Copyright 2000-2021 The OpenSSL Project Authors. All Rights Reserved.
|
||||
*
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
/*
|
||||
* WARNING: do not edit!
|
||||
* Generated by Makefile from include/openssl/opensslv.h.in
|
||||
* Generated by Makefile from openssl-3.1.4/include/openssl/opensslv.h.in
|
||||
*
|
||||
* Copyright 1999-2020 The OpenSSL Project Authors. All Rights Reserved.
|
||||
*
|
||||
@@ -28,8 +28,8 @@ extern "C" {
|
||||
* These macros express version number MAJOR.MINOR.PATCH exactly
|
||||
*/
|
||||
# define OPENSSL_VERSION_MAJOR 3
|
||||
# define OPENSSL_VERSION_MINOR 3
|
||||
# define OPENSSL_VERSION_PATCH 0
|
||||
# define OPENSSL_VERSION_MINOR 1
|
||||
# define OPENSSL_VERSION_PATCH 4
|
||||
|
||||
/*
|
||||
* Additional version information
|
||||
@@ -39,7 +39,7 @@ extern "C" {
|
||||
*/
|
||||
|
||||
/* Could be: #define OPENSSL_VERSION_PRE_RELEASE "-alpha.1" */
|
||||
# define OPENSSL_VERSION_PRE_RELEASE "-dev"
|
||||
# define OPENSSL_VERSION_PRE_RELEASE ""
|
||||
/* Could be: #define OPENSSL_VERSION_BUILD_METADATA "+fips" */
|
||||
/* Could be: #define OPENSSL_VERSION_BUILD_METADATA "+vendor.1" */
|
||||
# define OPENSSL_VERSION_BUILD_METADATA ""
|
||||
@@ -74,21 +74,21 @@ extern "C" {
|
||||
* longer variant with OPENSSL_VERSION_PRE_RELEASE_STR and
|
||||
* OPENSSL_VERSION_BUILD_METADATA_STR appended.
|
||||
*/
|
||||
# define OPENSSL_VERSION_STR "3.3.0"
|
||||
# define OPENSSL_FULL_VERSION_STR "3.3.0-dev"
|
||||
# define OPENSSL_VERSION_STR "3.1.4"
|
||||
# define OPENSSL_FULL_VERSION_STR "3.1.4"
|
||||
|
||||
/*
|
||||
* SECTION 3: ADDITIONAL METADATA
|
||||
*
|
||||
* These strings are defined separately to allow them to be parsable.
|
||||
*/
|
||||
# define OPENSSL_RELEASE_DATE ""
|
||||
# define OPENSSL_RELEASE_DATE "24 Oct 2023"
|
||||
|
||||
/*
|
||||
* SECTION 4: BACKWARD COMPATIBILITY
|
||||
*/
|
||||
|
||||
# define OPENSSL_VERSION_TEXT "OpenSSL 3.3.0-dev "
|
||||
# define OPENSSL_VERSION_TEXT "OpenSSL 3.1.4 24 Oct 2023"
|
||||
|
||||
/* Synthesize OPENSSL_VERSION_NUMBER with the layout 0xMNN00PPSL */
|
||||
# ifdef OPENSSL_VERSION_PRE_RELEASE
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright 1995-2021 The OpenSSL Project Authors. All Rights Reserved.
|
||||
* Copyright 1995-2022 The OpenSSL Project Authors. All Rights Reserved.
|
||||
*
|
||||
* Licensed under the Apache License 2.0 (the "License"). You may not use
|
||||
* this file except in compliance with the License. You can obtain a copy
|
||||
@@ -57,7 +57,6 @@ extern "C" {
|
||||
# define PEM_STRING_ECPRIVATEKEY "EC PRIVATE KEY"
|
||||
# define PEM_STRING_PARAMETERS "PARAMETERS"
|
||||
# define PEM_STRING_CMS "CMS"
|
||||
# define PEM_STRING_SM2PARAMETERS "SM2 PARAMETERS"
|
||||
|
||||
# define PEM_TYPE_ENCRYPTED 10
|
||||
# define PEM_TYPE_MIC_ONLY 20
|
||||
|
||||
@@ -1,8 +1,8 @@
|
||||
/*
|
||||
* WARNING: do not edit!
|
||||
* Generated by Makefile from include/openssl/pkcs12.h.in
|
||||
* Generated by Makefile from openssl-3.1.4/include/openssl/pkcs12.h.in
|
||||
*
|
||||
* Copyright 1999-2023 The OpenSSL Project Authors. All Rights Reserved.
|
||||
* Copyright 1999-2022 The OpenSSL Project Authors. All Rights Reserved.
|
||||
*
|
||||
* Licensed under the Apache License 2.0 (the "License"). You may not use
|
||||
* this file except in compliance with the License. You can obtain a copy
|
||||
@@ -44,7 +44,6 @@ extern "C" {
|
||||
|
||||
# define PKCS12_MAC_KEY_LENGTH 20
|
||||
|
||||
/* The macro is expected to be used only internally. Kept for backwards compatibility. */
|
||||
# define PKCS12_SALT_LEN 8
|
||||
|
||||
/* It's not clear if these are actually needed... */
|
||||
@@ -134,9 +133,7 @@ int PKCS12_SAFEBAG_get_bag_nid(const PKCS12_SAFEBAG *bag);
|
||||
const ASN1_TYPE *PKCS12_SAFEBAG_get0_bag_obj(const PKCS12_SAFEBAG *bag);
|
||||
const ASN1_OBJECT *PKCS12_SAFEBAG_get0_bag_type(const PKCS12_SAFEBAG *bag);
|
||||
|
||||
X509 *PKCS12_SAFEBAG_get1_cert_ex(const PKCS12_SAFEBAG *bag, OSSL_LIB_CTX *libctx, const char *propq);
|
||||
X509 *PKCS12_SAFEBAG_get1_cert(const PKCS12_SAFEBAG *bag);
|
||||
X509_CRL *PKCS12_SAFEBAG_get1_crl_ex(const PKCS12_SAFEBAG *bag, OSSL_LIB_CTX *libctx, const char *propq);
|
||||
X509_CRL *PKCS12_SAFEBAG_get1_crl(const PKCS12_SAFEBAG *bag);
|
||||
const STACK_OF(PKCS12_SAFEBAG) *
|
||||
PKCS12_SAFEBAG_get0_safes(const PKCS12_SAFEBAG *bag);
|
||||
@@ -224,7 +221,6 @@ ASN1_TYPE *PKCS12_get_attr_gen(const STACK_OF(X509_ATTRIBUTE) *attrs,
|
||||
char *PKCS12_get_friendlyname(PKCS12_SAFEBAG *bag);
|
||||
const STACK_OF(X509_ATTRIBUTE) *
|
||||
PKCS12_SAFEBAG_get0_attrs(const PKCS12_SAFEBAG *bag);
|
||||
void PKCS12_SAFEBAG_set0_attrs(PKCS12_SAFEBAG *bag, STACK_OF(X509_ATTRIBUTE) *attrs);
|
||||
unsigned char *PKCS12_pbe_crypt(const X509_ALGOR *algor,
|
||||
const char *pass, int passlen,
|
||||
const unsigned char *in, int inlen,
|
||||
@@ -312,7 +308,6 @@ DECLARE_ASN1_ITEM(PKCS12_AUTHSAFES)
|
||||
void PKCS12_PBE_add(void);
|
||||
int PKCS12_parse(PKCS12 *p12, const char *pass, EVP_PKEY **pkey, X509 **cert,
|
||||
STACK_OF(X509) **ca);
|
||||
typedef int PKCS12_create_cb(PKCS12_SAFEBAG *bag, void *cbarg);
|
||||
PKCS12 *PKCS12_create(const char *pass, const char *name, EVP_PKEY *pkey,
|
||||
X509 *cert, STACK_OF(X509) *ca, int nid_key, int nid_cert,
|
||||
int iter, int mac_iter, int keytype);
|
||||
@@ -320,11 +315,6 @@ PKCS12 *PKCS12_create_ex(const char *pass, const char *name, EVP_PKEY *pkey,
|
||||
X509 *cert, STACK_OF(X509) *ca, int nid_key, int nid_cert,
|
||||
int iter, int mac_iter, int keytype,
|
||||
OSSL_LIB_CTX *ctx, const char *propq);
|
||||
PKCS12 *PKCS12_create_ex2(const char *pass, const char *name, EVP_PKEY *pkey,
|
||||
X509 *cert, STACK_OF(X509) *ca, int nid_key, int nid_cert,
|
||||
int iter, int mac_iter, int keytype,
|
||||
OSSL_LIB_CTX *ctx, const char *propq,
|
||||
PKCS12_create_cb *cb, void *cbarg);
|
||||
|
||||
PKCS12_SAFEBAG *PKCS12_add_cert(STACK_OF(PKCS12_SAFEBAG) **pbags, X509 *cert);
|
||||
PKCS12_SAFEBAG *PKCS12_add_key(STACK_OF(PKCS12_SAFEBAG) **pbags,
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
/*
|
||||
* Generated by util/mkerr.pl DO NOT EDIT
|
||||
* Copyright 1995-2022 The OpenSSL Project Authors. All Rights Reserved.
|
||||
* Copyright 1995-2021 The OpenSSL Project Authors. All Rights Reserved.
|
||||
*
|
||||
* Licensed under the Apache License 2.0 (the "License"). You may not use
|
||||
* this file except in compliance with the License. You can obtain a copy
|
||||
@@ -21,7 +21,6 @@
|
||||
/*
|
||||
* PKCS12 reason codes.
|
||||
*/
|
||||
# define PKCS12_R_CALLBACK_FAILED 115
|
||||
# define PKCS12_R_CANT_PACK_STRUCTURE 100
|
||||
# define PKCS12_R_CONTENT_TYPE_NOT_DATA 121
|
||||
# define PKCS12_R_DECODE_ERROR 101
|
||||
|
||||
@@ -1,8 +1,8 @@
|
||||
/*
|
||||
* WARNING: do not edit!
|
||||
* Generated by Makefile from include/openssl/pkcs7.h.in
|
||||
* Generated by Makefile from openssl-3.1.4/include/openssl/pkcs7.h.in
|
||||
*
|
||||
* Copyright 1995-2021 The OpenSSL Project Authors. All Rights Reserved.
|
||||
* Copyright 1995-2023 The OpenSSL Project Authors. All Rights Reserved.
|
||||
*
|
||||
* Licensed under the Apache License 2.0 (the "License"). You may not use
|
||||
* this file except in compliance with the License. You can obtain a copy
|
||||
@@ -134,8 +134,8 @@ SKM_DEFINE_STACK_OF_INTERNAL(PKCS7_RECIP_INFO, PKCS7_RECIP_INFO, PKCS7_RECIP_INF
|
||||
typedef struct pkcs7_signed_st {
|
||||
ASN1_INTEGER *version; /* version 1 */
|
||||
STACK_OF(X509_ALGOR) *md_algs; /* md used */
|
||||
STACK_OF(X509) *cert; /* [ 0 ] */ /* name should be 'certificates' */
|
||||
STACK_OF(X509_CRL) *crl; /* [ 1 ] */ /* name should be 'crls' */
|
||||
STACK_OF(X509) *cert; /* [ 0 ] */
|
||||
STACK_OF(X509_CRL) *crl; /* [ 1 ] */
|
||||
STACK_OF(PKCS7_SIGNER_INFO) *signer_info;
|
||||
struct pkcs7_st *contents;
|
||||
} PKCS7_SIGNED;
|
||||
@@ -161,8 +161,8 @@ typedef struct pkcs7_enveloped_st {
|
||||
typedef struct pkcs7_signedandenveloped_st {
|
||||
ASN1_INTEGER *version; /* version 1 */
|
||||
STACK_OF(X509_ALGOR) *md_algs; /* md used */
|
||||
STACK_OF(X509) *cert; /* [ 0 ] */ /* name should be 'certificates' */
|
||||
STACK_OF(X509_CRL) *crl; /* [ 1 ] */ /* name should be 'crls' */
|
||||
STACK_OF(X509) *cert; /* [ 0 ] */
|
||||
STACK_OF(X509_CRL) *crl; /* [ 1 ] */
|
||||
STACK_OF(PKCS7_SIGNER_INFO) *signer_info;
|
||||
PKCS7_ENC_CONTENT *enc_data;
|
||||
STACK_OF(PKCS7_RECIP_INFO) *recipientinfo;
|
||||
@@ -203,7 +203,7 @@ typedef struct pkcs7_st {
|
||||
/* NID_pkcs7_data */
|
||||
ASN1_OCTET_STRING *data;
|
||||
/* NID_pkcs7_signed */
|
||||
PKCS7_SIGNED *sign; /* field name 'signed' would clash with C keyword */
|
||||
PKCS7_SIGNED *sign;
|
||||
/* NID_pkcs7_enveloped */
|
||||
PKCS7_ENVELOPE *enveloped;
|
||||
/* NID_pkcs7_signedAndEnveloped */
|
||||
@@ -344,13 +344,13 @@ int PKCS7_SIGNER_INFO_set(PKCS7_SIGNER_INFO *p7i, X509 *x509, EVP_PKEY *pkey,
|
||||
const EVP_MD *dgst);
|
||||
int PKCS7_SIGNER_INFO_sign(PKCS7_SIGNER_INFO *si);
|
||||
int PKCS7_add_signer(PKCS7 *p7, PKCS7_SIGNER_INFO *p7i);
|
||||
int PKCS7_add_certificate(PKCS7 *p7, X509 *cert);
|
||||
int PKCS7_add_crl(PKCS7 *p7, X509_CRL *crl);
|
||||
int PKCS7_add_certificate(PKCS7 *p7, X509 *x509);
|
||||
int PKCS7_add_crl(PKCS7 *p7, X509_CRL *x509);
|
||||
int PKCS7_content_new(PKCS7 *p7, int nid);
|
||||
int PKCS7_dataVerify(X509_STORE *cert_store, X509_STORE_CTX *ctx,
|
||||
BIO *bio, PKCS7 *p7, PKCS7_SIGNER_INFO *si);
|
||||
int PKCS7_signatureVerify(BIO *bio, PKCS7 *p7, PKCS7_SIGNER_INFO *si,
|
||||
X509 *signer);
|
||||
X509 *x509);
|
||||
|
||||
BIO *PKCS7_dataInit(PKCS7 *p7, BIO *bio);
|
||||
int PKCS7_dataFinal(PKCS7 *p7, BIO *bio);
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright 2021-2023 The OpenSSL Project Authors. All Rights Reserved.
|
||||
* Copyright 2021 The OpenSSL Project Authors. All Rights Reserved.
|
||||
*
|
||||
* Licensed under the Apache License 2.0 (the "License"). You may not use
|
||||
* this file except in compliance with the License. You can obtain a copy
|
||||
@@ -19,7 +19,6 @@ extern "C" {
|
||||
|
||||
# define SSL_MAX_MASTER_KEY_LENGTH 48
|
||||
|
||||
/* SSL/TLS uses a 2 byte unsigned version number */
|
||||
# define SSL3_VERSION 0x0300
|
||||
# define TLS1_VERSION 0x0301
|
||||
# define TLS1_1_VERSION 0x0302
|
||||
@@ -29,9 +28,6 @@ extern "C" {
|
||||
# define DTLS1_2_VERSION 0xFEFD
|
||||
# define DTLS1_BAD_VER 0x0100
|
||||
|
||||
/* QUIC uses a 4 byte unsigned version number */
|
||||
# define OSSL_QUIC1_VERSION 0x0000001
|
||||
|
||||
# ifdef __cplusplus
|
||||
}
|
||||
# endif
|
||||
|
||||
@@ -52,7 +52,6 @@
|
||||
# define PROV_R_INDICATOR_INTEGRITY_FAILURE 210
|
||||
# define PROV_R_INSUFFICIENT_DRBG_STRENGTH 181
|
||||
# define PROV_R_INVALID_AAD 108
|
||||
# define PROV_R_INVALID_AEAD 231
|
||||
# define PROV_R_INVALID_CONFIG_DATA 211
|
||||
# define PROV_R_INVALID_CONSTANT_LENGTH 157
|
||||
# define PROV_R_INVALID_CURVE 176
|
||||
@@ -64,11 +63,9 @@
|
||||
# define PROV_R_INVALID_INPUT_LENGTH 230
|
||||
# define PROV_R_INVALID_ITERATION_COUNT 123
|
||||
# define PROV_R_INVALID_IV_LENGTH 109
|
||||
# define PROV_R_INVALID_KDF 232
|
||||
# define PROV_R_INVALID_KEY 158
|
||||
# define PROV_R_INVALID_KEY_LENGTH 105
|
||||
# define PROV_R_INVALID_MAC 151
|
||||
# define PROV_R_INVALID_MEMORY_SIZE 235
|
||||
# define PROV_R_INVALID_MGF1_MD 167
|
||||
# define PROV_R_INVALID_MODE 125
|
||||
# define PROV_R_INVALID_OUTPUT_LENGTH 217
|
||||
@@ -80,7 +77,6 @@
|
||||
# define PROV_R_INVALID_STATE 212
|
||||
# define PROV_R_INVALID_TAG 110
|
||||
# define PROV_R_INVALID_TAG_LENGTH 118
|
||||
# define PROV_R_INVALID_THREAD_POOL_SIZE 234
|
||||
# define PROV_R_INVALID_UKM_LENGTH 200
|
||||
# define PROV_R_INVALID_X931_DIGEST 170
|
||||
# define PROV_R_IN_ERROR_STATE 192
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright 2019-2023 The OpenSSL Project Authors. All Rights Reserved.
|
||||
* Copyright 2019-2021 The OpenSSL Project Authors. All Rights Reserved.
|
||||
*
|
||||
* Licensed under the Apache License 2.0 (the "License"). You may not use
|
||||
* this file except in compliance with the License. You can obtain a copy
|
||||
@@ -17,19 +17,13 @@
|
||||
extern "C" {
|
||||
# endif
|
||||
|
||||
/* Set and Get a library context search path */
|
||||
/* Set the default provider search path */
|
||||
int OSSL_PROVIDER_set_default_search_path(OSSL_LIB_CTX *, const char *path);
|
||||
const char *OSSL_PROVIDER_get0_default_search_path(OSSL_LIB_CTX *libctx);
|
||||
|
||||
/* Load and unload a provider */
|
||||
OSSL_PROVIDER *OSSL_PROVIDER_load(OSSL_LIB_CTX *, const char *name);
|
||||
OSSL_PROVIDER *OSSL_PROVIDER_load_ex(OSSL_LIB_CTX *, const char *name,
|
||||
OSSL_PARAM *params);
|
||||
OSSL_PROVIDER *OSSL_PROVIDER_try_load(OSSL_LIB_CTX *, const char *name,
|
||||
int retain_fallbacks);
|
||||
OSSL_PROVIDER *OSSL_PROVIDER_try_load_ex(OSSL_LIB_CTX *, const char *name,
|
||||
OSSL_PARAM *params,
|
||||
int retain_fallbacks);
|
||||
int OSSL_PROVIDER_unload(OSSL_PROVIDER *prov);
|
||||
int OSSL_PROVIDER_available(OSSL_LIB_CTX *, const char *name);
|
||||
int OSSL_PROVIDER_do_all(OSSL_LIB_CTX *ctx,
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright 1995-2021 The OpenSSL Project Authors. All Rights Reserved.
|
||||
* Copyright 1995-2022 The OpenSSL Project Authors. All Rights Reserved.
|
||||
*
|
||||
* Licensed under the Apache License 2.0 (the "License"). You may not use
|
||||
* this file except in compliance with the License. You can obtain a copy
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright 1995-2021 The OpenSSL Project Authors. All Rights Reserved.
|
||||
* Copyright 1995-2022 The OpenSSL Project Authors. All Rights Reserved.
|
||||
*
|
||||
* Licensed under the Apache License 2.0 (the "License"). You may not use
|
||||
* this file except in compliance with the License. You can obtain a copy
|
||||
@@ -189,8 +189,6 @@ int EVP_PKEY_CTX_get0_rsa_oaep_label(EVP_PKEY_CTX *ctx, unsigned char **label);
|
||||
|
||||
# define EVP_PKEY_CTRL_RSA_KEYGEN_PRIMES (EVP_PKEY_ALG_CTRL + 13)
|
||||
|
||||
# define EVP_PKEY_CTRL_RSA_IMPLICIT_REJECTION (EVP_PKEY_ALG_CTRL + 14)
|
||||
|
||||
# define RSA_PKCS1_PADDING 1
|
||||
# define RSA_NO_PADDING 3
|
||||
# define RSA_PKCS1_OAEP_PADDING 4
|
||||
@@ -200,9 +198,6 @@ int EVP_PKEY_CTX_get0_rsa_oaep_label(EVP_PKEY_CTX *ctx, unsigned char **label);
|
||||
# define RSA_PKCS1_PSS_PADDING 6
|
||||
# define RSA_PKCS1_WITH_TLS_PADDING 7
|
||||
|
||||
/* internal RSA_ only */
|
||||
# define RSA_PKCS1_NO_IMPLICIT_REJECT_PADDING 8
|
||||
|
||||
# define RSA_PKCS1_PADDING_SIZE 11
|
||||
|
||||
# define RSA_set_app_data(s,arg) RSA_set_ex_data(s,0,arg)
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
/*
|
||||
* WARNING: do not edit!
|
||||
* Generated by Makefile from include/openssl/safestack.h.in
|
||||
* Generated by Makefile from openssl-3.1.4/include/openssl/safestack.h.in
|
||||
*
|
||||
* Copyright 1999-2021 The OpenSSL Project Authors. All Rights Reserved.
|
||||
*
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright 1995-2023 The OpenSSL Project Authors. All Rights Reserved.
|
||||
* Copyright 1995-2021 The OpenSSL Project Authors. All Rights Reserved.
|
||||
*
|
||||
* Licensed under the Apache License 2.0 (the "License"). You may not use
|
||||
* this file except in compliance with the License. You can obtain a copy
|
||||
@@ -81,7 +81,6 @@ OSSL_DEPRECATEDIN_3_0 void SHA256_Transform(SHA256_CTX *c,
|
||||
unsigned char *SHA224(const unsigned char *d, size_t n, unsigned char *md);
|
||||
unsigned char *SHA256(const unsigned char *d, size_t n, unsigned char *md);
|
||||
|
||||
# define SHA256_192_DIGEST_LENGTH 24
|
||||
# define SHA224_DIGEST_LENGTH 28
|
||||
# define SHA256_DIGEST_LENGTH 32
|
||||
# define SHA384_DIGEST_LENGTH 48
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
/*
|
||||
* WARNING: do not edit!
|
||||
* Generated by Makefile from include/openssl/srp.h.in
|
||||
* Generated by Makefile from openssl-3.1.4/include/openssl/srp.h.in
|
||||
*
|
||||
* Copyright 2004-2021 The OpenSSL Project Authors. All Rights Reserved.
|
||||
* Copyright (c) 2004, EdelKey Project. All Rights Reserved.
|
||||
|
||||
@@ -28,28 +28,16 @@
|
||||
extern "C" {
|
||||
#endif
|
||||
|
||||
# define SRTP_AES128_CM_SHA1_80 0x0001
|
||||
# define SRTP_AES128_CM_SHA1_32 0x0002
|
||||
# define SRTP_AES128_F8_SHA1_80 0x0003
|
||||
# define SRTP_AES128_F8_SHA1_32 0x0004
|
||||
# define SRTP_NULL_SHA1_80 0x0005
|
||||
# define SRTP_NULL_SHA1_32 0x0006
|
||||
# define SRTP_AES128_CM_SHA1_80 0x0001
|
||||
# define SRTP_AES128_CM_SHA1_32 0x0002
|
||||
# define SRTP_AES128_F8_SHA1_80 0x0003
|
||||
# define SRTP_AES128_F8_SHA1_32 0x0004
|
||||
# define SRTP_NULL_SHA1_80 0x0005
|
||||
# define SRTP_NULL_SHA1_32 0x0006
|
||||
|
||||
/* AEAD SRTP protection profiles from RFC 7714 */
|
||||
# define SRTP_AEAD_AES_128_GCM 0x0007
|
||||
# define SRTP_AEAD_AES_256_GCM 0x0008
|
||||
|
||||
/* DOUBLE AEAD SRTP protection profiles from RFC 8723 */
|
||||
# define SRTP_DOUBLE_AEAD_AES_128_GCM_AEAD_AES_128_GCM 0x0009
|
||||
# define SRTP_DOUBLE_AEAD_AES_256_GCM_AEAD_AES_256_GCM 0x000A
|
||||
|
||||
/* ARIA SRTP protection profiles from RFC 8269 */
|
||||
# define SRTP_ARIA_128_CTR_HMAC_SHA1_80 0x000B
|
||||
# define SRTP_ARIA_128_CTR_HMAC_SHA1_32 0x000C
|
||||
# define SRTP_ARIA_256_CTR_HMAC_SHA1_80 0x000D
|
||||
# define SRTP_ARIA_256_CTR_HMAC_SHA1_32 0x000E
|
||||
# define SRTP_AEAD_ARIA_128_GCM 0x000F
|
||||
# define SRTP_AEAD_ARIA_256_GCM 0x0010
|
||||
# define SRTP_AEAD_AES_128_GCM 0x0007
|
||||
# define SRTP_AEAD_AES_256_GCM 0x0008
|
||||
|
||||
# ifndef OPENSSL_NO_SRTP
|
||||
|
||||
|
||||
@@ -1,8 +1,8 @@
|
||||
/*
|
||||
* WARNING: do not edit!
|
||||
* Generated by Makefile from include/openssl/ssl.h.in
|
||||
* Generated by Makefile from openssl-3.1.4/include/openssl/ssl.h.in
|
||||
*
|
||||
* Copyright 1995-2023 The OpenSSL Project Authors. All Rights Reserved.
|
||||
* Copyright 1995-2022 The OpenSSL Project Authors. All Rights Reserved.
|
||||
* Copyright (c) 2002, Oracle and/or its affiliates. All rights reserved
|
||||
* Copyright 2005 Nokia. All rights reserved.
|
||||
*
|
||||
@@ -24,7 +24,6 @@
|
||||
# endif
|
||||
|
||||
# include <openssl/e_os2.h>
|
||||
# include <openssl/e_ostime.h>
|
||||
# include <openssl/opensslconf.h>
|
||||
# include <openssl/comp.h>
|
||||
# include <openssl/bio.h>
|
||||
@@ -282,31 +281,28 @@ typedef int (*tls_session_secret_cb_fn)(SSL *s, void *secret, int *secret_len,
|
||||
|
||||
/* Extension context codes */
|
||||
/* This extension is only allowed in TLS */
|
||||
#define SSL_EXT_TLS_ONLY 0x00001
|
||||
#define SSL_EXT_TLS_ONLY 0x0001
|
||||
/* This extension is only allowed in DTLS */
|
||||
#define SSL_EXT_DTLS_ONLY 0x00002
|
||||
#define SSL_EXT_DTLS_ONLY 0x0002
|
||||
/* Some extensions may be allowed in DTLS but we don't implement them for it */
|
||||
#define SSL_EXT_TLS_IMPLEMENTATION_ONLY 0x00004
|
||||
#define SSL_EXT_TLS_IMPLEMENTATION_ONLY 0x0004
|
||||
/* Most extensions are not defined for SSLv3 but EXT_TYPE_renegotiate is */
|
||||
#define SSL_EXT_SSL3_ALLOWED 0x00008
|
||||
#define SSL_EXT_SSL3_ALLOWED 0x0008
|
||||
/* Extension is only defined for TLS1.2 and below */
|
||||
#define SSL_EXT_TLS1_2_AND_BELOW_ONLY 0x00010
|
||||
#define SSL_EXT_TLS1_2_AND_BELOW_ONLY 0x0010
|
||||
/* Extension is only defined for TLS1.3 and above */
|
||||
#define SSL_EXT_TLS1_3_ONLY 0x00020
|
||||
#define SSL_EXT_TLS1_3_ONLY 0x0020
|
||||
/* Ignore this extension during parsing if we are resuming */
|
||||
#define SSL_EXT_IGNORE_ON_RESUMPTION 0x00040
|
||||
#define SSL_EXT_CLIENT_HELLO 0x00080
|
||||
#define SSL_EXT_IGNORE_ON_RESUMPTION 0x0040
|
||||
#define SSL_EXT_CLIENT_HELLO 0x0080
|
||||
/* Really means TLS1.2 or below */
|
||||
#define SSL_EXT_TLS1_2_SERVER_HELLO 0x00100
|
||||
#define SSL_EXT_TLS1_3_SERVER_HELLO 0x00200
|
||||
#define SSL_EXT_TLS1_3_ENCRYPTED_EXTENSIONS 0x00400
|
||||
#define SSL_EXT_TLS1_3_HELLO_RETRY_REQUEST 0x00800
|
||||
#define SSL_EXT_TLS1_3_CERTIFICATE 0x01000
|
||||
#define SSL_EXT_TLS1_3_NEW_SESSION_TICKET 0x02000
|
||||
#define SSL_EXT_TLS1_3_CERTIFICATE_REQUEST 0x04000
|
||||
#define SSL_EXT_TLS1_3_CERTIFICATE_COMPRESSION 0x08000
|
||||
/* When sending a raw public key in a certificate message */
|
||||
#define SSL_EXT_TLS1_3_RAW_PUBLIC_KEY 0x10000
|
||||
#define SSL_EXT_TLS1_2_SERVER_HELLO 0x0100
|
||||
#define SSL_EXT_TLS1_3_SERVER_HELLO 0x0200
|
||||
#define SSL_EXT_TLS1_3_ENCRYPTED_EXTENSIONS 0x0400
|
||||
#define SSL_EXT_TLS1_3_HELLO_RETRY_REQUEST 0x0800
|
||||
#define SSL_EXT_TLS1_3_CERTIFICATE 0x1000
|
||||
#define SSL_EXT_TLS1_3_NEW_SESSION_TICKET 0x2000
|
||||
#define SSL_EXT_TLS1_3_CERTIFICATE_REQUEST 0x4000
|
||||
|
||||
/* Typedefs for handling custom extensions */
|
||||
|
||||
@@ -437,19 +433,6 @@ typedef int (*SSL_async_callback_fn)(SSL *s, void *arg);
|
||||
* interoperability with CryptoPro CSP 3.x
|
||||
*/
|
||||
# define SSL_OP_CRYPTOPRO_TLSEXT_BUG SSL_OP_BIT(31)
|
||||
/*
|
||||
* Disable RFC8879 certificate compression
|
||||
* SSL_OP_NO_TX_CERTIFICATE_COMPRESSION: don't send compressed certificates,
|
||||
* and ignore the extension when received.
|
||||
* SSL_OP_NO_RX_CERTIFICATE_COMPRESSION: don't send the extension, and
|
||||
* subsequently indicating that receiving is not supported
|
||||
*/
|
||||
# define SSL_OP_NO_TX_CERTIFICATE_COMPRESSION SSL_OP_BIT(32)
|
||||
# define SSL_OP_NO_RX_CERTIFICATE_COMPRESSION SSL_OP_BIT(33)
|
||||
/* Enable KTLS TX zerocopy on Linux */
|
||||
# define SSL_OP_ENABLE_KTLS_TX_ZEROCOPY_SENDFILE SSL_OP_BIT(34)
|
||||
|
||||
#define SSL_OP_PREFER_NO_DHE_KEX SSL_OP_BIT(35)
|
||||
|
||||
/*
|
||||
* Option "collections."
|
||||
@@ -594,8 +577,6 @@ typedef int (*SSL_async_callback_fn)(SSL *s, void *arg);
|
||||
# define CERT_PKEY_CERT_TYPE 0x400
|
||||
/* Cert chain suitable to Suite B */
|
||||
# define CERT_PKEY_SUITEB 0x800
|
||||
/* Cert pkey valid for raw public key use */
|
||||
# define CERT_PKEY_RPK 0x1000
|
||||
|
||||
# define SSL_CONF_FLAG_CMDLINE 0x1
|
||||
# define SSL_CONF_FLAG_FILE 0x2
|
||||
@@ -987,7 +968,6 @@ uint32_t SSL_get_recv_max_early_data(const SSL *s);
|
||||
# include <openssl/tls1.h> /* This is mostly sslv3 with a few tweaks */
|
||||
# include <openssl/dtls1.h> /* Datagram TLS */
|
||||
# include <openssl/srtp.h> /* Support for the use_srtp extension */
|
||||
# include <openssl/quic.h>
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
@@ -1089,7 +1069,6 @@ typedef enum {
|
||||
DTLS_ST_CR_HELLO_VERIFY_REQUEST,
|
||||
TLS_ST_CR_SRVR_HELLO,
|
||||
TLS_ST_CR_CERT,
|
||||
TLS_ST_CR_COMP_CERT,
|
||||
TLS_ST_CR_CERT_STATUS,
|
||||
TLS_ST_CR_KEY_EXCH,
|
||||
TLS_ST_CR_CERT_REQ,
|
||||
@@ -1099,7 +1078,6 @@ typedef enum {
|
||||
TLS_ST_CR_FINISHED,
|
||||
TLS_ST_CW_CLNT_HELLO,
|
||||
TLS_ST_CW_CERT,
|
||||
TLS_ST_CW_COMP_CERT,
|
||||
TLS_ST_CW_KEY_EXCH,
|
||||
TLS_ST_CW_CERT_VRFY,
|
||||
TLS_ST_CW_CHANGE,
|
||||
@@ -1110,12 +1088,10 @@ typedef enum {
|
||||
DTLS_ST_SW_HELLO_VERIFY_REQUEST,
|
||||
TLS_ST_SW_SRVR_HELLO,
|
||||
TLS_ST_SW_CERT,
|
||||
TLS_ST_SW_COMP_CERT,
|
||||
TLS_ST_SW_KEY_EXCH,
|
||||
TLS_ST_SW_CERT_REQ,
|
||||
TLS_ST_SW_SRVR_DONE,
|
||||
TLS_ST_SR_CERT,
|
||||
TLS_ST_SR_COMP_CERT,
|
||||
TLS_ST_SR_KEY_EXCH,
|
||||
TLS_ST_SR_CERT_VRFY,
|
||||
TLS_ST_SR_NEXT_PROTO,
|
||||
@@ -1407,7 +1383,6 @@ DECLARE_PEM_rw(SSL_SESSION, SSL_SESSION)
|
||||
# define SSL_CTRL_GET_SIGNATURE_NID 132
|
||||
# define SSL_CTRL_GET_TMP_KEY 133
|
||||
# define SSL_CTRL_GET_NEGOTIATED_GROUP 134
|
||||
# define SSL_CTRL_GET_IANA_GROUPS 135
|
||||
# define SSL_CTRL_SET_RETRY_VERIFY 136
|
||||
# define SSL_CTRL_GET_VERIFY_CERT_STORE 137
|
||||
# define SSL_CTRL_GET_CHAIN_CERT_STORE 138
|
||||
@@ -1513,8 +1488,6 @@ DECLARE_PEM_rw(SSL_SESSION, SSL_SESSION)
|
||||
|
||||
# define SSL_get1_groups(s, glist) \
|
||||
SSL_ctrl(s,SSL_CTRL_GET_GROUPS,0,(int*)(glist))
|
||||
# define SSL_get0_iana_groups(s, plst) \
|
||||
SSL_ctrl(s,SSL_CTRL_GET_IANA_GROUPS,0,(uint16_t **)(plst))
|
||||
# define SSL_CTX_set1_groups(ctx, glist, glistlen) \
|
||||
SSL_CTX_ctrl(ctx,SSL_CTRL_SET_GROUPS,glistlen,(int *)(glist))
|
||||
# define SSL_CTX_set1_groups_list(ctx, s) \
|
||||
@@ -1579,7 +1552,6 @@ DECLARE_PEM_rw(SSL_SESSION, SSL_SESSION)
|
||||
# define SSL_get_max_proto_version(s) \
|
||||
SSL_ctrl(s, SSL_CTRL_GET_MAX_PROTO_VERSION, 0, NULL)
|
||||
|
||||
const char *SSL_get0_group_name(SSL *s);
|
||||
const char *SSL_group_to_name(SSL *s, int id);
|
||||
|
||||
/* Backwards compatibility, original 1.1.0 names */
|
||||
@@ -1814,9 +1786,6 @@ __owur int SSL_has_matching_session_id(const SSL *s,
|
||||
unsigned int id_len);
|
||||
SSL_SESSION *d2i_SSL_SESSION(SSL_SESSION **a, const unsigned char **pp,
|
||||
long length);
|
||||
SSL_SESSION *d2i_SSL_SESSION_ex(SSL_SESSION **a, const unsigned char **pp,
|
||||
long length, OSSL_LIB_CTX *libctx,
|
||||
const char *propq);
|
||||
|
||||
# ifdef OPENSSL_X509_H
|
||||
__owur X509 *SSL_get0_peer_certificate(const SSL *s);
|
||||
@@ -1874,8 +1843,6 @@ __owur int SSL_CTX_set_session_id_context(SSL_CTX *ctx,
|
||||
SSL *SSL_new(SSL_CTX *ctx);
|
||||
int SSL_up_ref(SSL *s);
|
||||
int SSL_is_dtls(const SSL *s);
|
||||
int SSL_is_tls(const SSL *s);
|
||||
int SSL_is_quic(const SSL *s);
|
||||
__owur int SSL_set_session_id_context(SSL *ssl, const unsigned char *sid_ctx,
|
||||
unsigned int sid_ctx_len);
|
||||
|
||||
@@ -1968,8 +1935,6 @@ size_t SSL_client_hello_get0_ciphers(SSL *s, const unsigned char **out);
|
||||
size_t SSL_client_hello_get0_compression_methods(SSL *s,
|
||||
const unsigned char **out);
|
||||
int SSL_client_hello_get1_extensions_present(SSL *s, int **out, size_t *outlen);
|
||||
int SSL_client_hello_get_extension_order(SSL *s, uint16_t *exts,
|
||||
size_t *num_exts);
|
||||
int SSL_client_hello_get0_ext(SSL *s, unsigned int type,
|
||||
const unsigned char **out, size_t *outlen);
|
||||
|
||||
@@ -2024,7 +1989,6 @@ __owur int SSL_get_early_data_status(const SSL *s);
|
||||
|
||||
__owur int SSL_get_error(const SSL *s, int ret_code);
|
||||
__owur const char *SSL_get_version(const SSL *s);
|
||||
__owur int SSL_get_handshake_rtt(const SSL *s, uint64_t *rtt);
|
||||
|
||||
/* This sets the 'default' SSL version that SSL_new() will create */
|
||||
# ifndef OPENSSL_NO_DEPRECATED_3_0
|
||||
@@ -2333,105 +2297,6 @@ size_t SSL_get_num_tickets(const SSL *s);
|
||||
int SSL_CTX_set_num_tickets(SSL_CTX *ctx, size_t num_tickets);
|
||||
size_t SSL_CTX_get_num_tickets(const SSL_CTX *ctx);
|
||||
|
||||
/* QUIC support */
|
||||
int SSL_handle_events(SSL *s);
|
||||
__owur int SSL_get_event_timeout(SSL *s, struct timeval *tv, int *is_infinite);
|
||||
__owur int SSL_get_rpoll_descriptor(SSL *s, BIO_POLL_DESCRIPTOR *desc);
|
||||
__owur int SSL_get_wpoll_descriptor(SSL *s, BIO_POLL_DESCRIPTOR *desc);
|
||||
__owur int SSL_net_read_desired(SSL *s);
|
||||
__owur int SSL_net_write_desired(SSL *s);
|
||||
__owur int SSL_set_blocking_mode(SSL *s, int blocking);
|
||||
__owur int SSL_get_blocking_mode(SSL *s);
|
||||
__owur int SSL_set1_initial_peer_addr(SSL *s, const BIO_ADDR *peer_addr);
|
||||
__owur SSL *SSL_get0_connection(SSL *s);
|
||||
__owur int SSL_is_connection(SSL *s);
|
||||
|
||||
#define SSL_STREAM_TYPE_NONE 0
|
||||
#define SSL_STREAM_TYPE_READ (1U << 0)
|
||||
#define SSL_STREAM_TYPE_WRITE (1U << 1)
|
||||
#define SSL_STREAM_TYPE_BIDI (SSL_STREAM_TYPE_READ | SSL_STREAM_TYPE_WRITE)
|
||||
__owur int SSL_get_stream_type(SSL *s);
|
||||
|
||||
__owur uint64_t SSL_get_stream_id(SSL *s);
|
||||
__owur int SSL_is_stream_local(SSL *s);
|
||||
|
||||
#define SSL_DEFAULT_STREAM_MODE_NONE 0
|
||||
#define SSL_DEFAULT_STREAM_MODE_AUTO_BIDI 1
|
||||
#define SSL_DEFAULT_STREAM_MODE_AUTO_UNI 2
|
||||
__owur int SSL_set_default_stream_mode(SSL *s, uint32_t mode);
|
||||
|
||||
#define SSL_STREAM_FLAG_UNI (1U << 0)
|
||||
#define SSL_STREAM_FLAG_NO_BLOCK (1U << 1)
|
||||
#define SSL_STREAM_FLAG_ADVANCE (1U << 2)
|
||||
__owur SSL *SSL_new_stream(SSL *s, uint64_t flags);
|
||||
|
||||
#define SSL_INCOMING_STREAM_POLICY_AUTO 0
|
||||
#define SSL_INCOMING_STREAM_POLICY_ACCEPT 1
|
||||
#define SSL_INCOMING_STREAM_POLICY_REJECT 2
|
||||
__owur int SSL_set_incoming_stream_policy(SSL *s, int policy, uint64_t aec);
|
||||
|
||||
#define SSL_ACCEPT_STREAM_NO_BLOCK (1U << 0)
|
||||
__owur SSL *SSL_accept_stream(SSL *s, uint64_t flags);
|
||||
__owur size_t SSL_get_accept_stream_queue_len(SSL *s);
|
||||
|
||||
# ifndef OPENSSL_NO_QUIC
|
||||
__owur int SSL_inject_net_dgram(SSL *s, const unsigned char *buf,
|
||||
size_t buf_len,
|
||||
const BIO_ADDR *peer,
|
||||
const BIO_ADDR *local);
|
||||
# endif
|
||||
|
||||
typedef struct ssl_shutdown_ex_args_st {
|
||||
uint64_t quic_error_code;
|
||||
const char *quic_reason;
|
||||
} SSL_SHUTDOWN_EX_ARGS;
|
||||
|
||||
#define SSL_SHUTDOWN_FLAG_RAPID (1U << 0)
|
||||
#define SSL_SHUTDOWN_FLAG_NO_STREAM_FLUSH (1U << 1)
|
||||
#define SSL_SHUTDOWN_FLAG_NO_BLOCK (1U << 2)
|
||||
#define SSL_SHUTDOWN_FLAG_WAIT_PEER (1U << 3)
|
||||
|
||||
__owur int SSL_shutdown_ex(SSL *ssl, uint64_t flags,
|
||||
const SSL_SHUTDOWN_EX_ARGS *args,
|
||||
size_t args_len);
|
||||
|
||||
__owur int SSL_stream_conclude(SSL *ssl, uint64_t flags);
|
||||
|
||||
typedef struct ssl_stream_reset_args_st {
|
||||
uint64_t quic_error_code;
|
||||
} SSL_STREAM_RESET_ARGS;
|
||||
|
||||
__owur int SSL_stream_reset(SSL *ssl,
|
||||
const SSL_STREAM_RESET_ARGS *args,
|
||||
size_t args_len);
|
||||
|
||||
#define SSL_STREAM_STATE_NONE 0
|
||||
#define SSL_STREAM_STATE_OK 1
|
||||
#define SSL_STREAM_STATE_WRONG_DIR 2
|
||||
#define SSL_STREAM_STATE_FINISHED 3
|
||||
#define SSL_STREAM_STATE_RESET_LOCAL 4
|
||||
#define SSL_STREAM_STATE_RESET_REMOTE 5
|
||||
#define SSL_STREAM_STATE_CONN_CLOSED 6
|
||||
__owur int SSL_get_stream_read_state(SSL *ssl);
|
||||
__owur int SSL_get_stream_write_state(SSL *ssl);
|
||||
|
||||
__owur int SSL_get_stream_read_error_code(SSL *ssl, uint64_t *app_error_code);
|
||||
__owur int SSL_get_stream_write_error_code(SSL *ssl, uint64_t *app_error_code);
|
||||
|
||||
#define SSL_CONN_CLOSE_FLAG_LOCAL (1U << 0)
|
||||
#define SSL_CONN_CLOSE_FLAG_TRANSPORT (1U << 1)
|
||||
|
||||
typedef struct ssl_conn_close_info_st {
|
||||
uint64_t error_code, frame_type;
|
||||
const char *reason;
|
||||
size_t reason_len;
|
||||
uint32_t flags;
|
||||
} SSL_CONN_CLOSE_INFO;
|
||||
|
||||
__owur int SSL_get_conn_close_info(SSL *ssl,
|
||||
SSL_CONN_CLOSE_INFO *info,
|
||||
size_t info_len);
|
||||
|
||||
# ifndef OPENSSL_NO_DEPRECATED_1_1_0
|
||||
# define SSL_cache_hit(s) SSL_session_reused(s)
|
||||
# endif
|
||||
@@ -2731,36 +2596,6 @@ void SSL_set_allow_early_data_cb(SSL *s,
|
||||
const char *OSSL_default_cipher_list(void);
|
||||
const char *OSSL_default_ciphersuites(void);
|
||||
|
||||
/* RFC8879 Certificate compression APIs */
|
||||
|
||||
int SSL_CTX_compress_certs(SSL_CTX *ctx, int alg);
|
||||
int SSL_compress_certs(SSL *ssl, int alg);
|
||||
|
||||
int SSL_CTX_set1_cert_comp_preference(SSL_CTX *ctx, int *algs, size_t len);
|
||||
int SSL_set1_cert_comp_preference(SSL *ssl, int *algs, size_t len);
|
||||
|
||||
int SSL_CTX_set1_compressed_cert(SSL_CTX *ctx, int algorithm, unsigned char *comp_data,
|
||||
size_t comp_length, size_t orig_length);
|
||||
int SSL_set1_compressed_cert(SSL *ssl, int algorithm, unsigned char *comp_data,
|
||||
size_t comp_length, size_t orig_length);
|
||||
size_t SSL_CTX_get1_compressed_cert(SSL_CTX *ctx, int alg, unsigned char **data, size_t *orig_len);
|
||||
size_t SSL_get1_compressed_cert(SSL *ssl, int alg, unsigned char **data, size_t *orig_len);
|
||||
|
||||
__owur int SSL_add_expected_rpk(SSL *s, EVP_PKEY *rpk);
|
||||
__owur EVP_PKEY *SSL_get0_peer_rpk(const SSL *s);
|
||||
__owur EVP_PKEY *SSL_SESSION_get0_peer_rpk(SSL_SESSION *s);
|
||||
__owur int SSL_get_negotiated_client_cert_type(const SSL *s);
|
||||
__owur int SSL_get_negotiated_server_cert_type(const SSL *s);
|
||||
|
||||
__owur int SSL_set1_client_cert_type(SSL *s, const unsigned char *val, size_t len);
|
||||
__owur int SSL_set1_server_cert_type(SSL *s, const unsigned char *val, size_t len);
|
||||
__owur int SSL_CTX_set1_client_cert_type(SSL_CTX *ctx, const unsigned char *val, size_t len);
|
||||
__owur int SSL_CTX_set1_server_cert_type(SSL_CTX *ctx, const unsigned char *val, size_t len);
|
||||
__owur int SSL_get0_client_cert_type(const SSL *s, unsigned char **t, size_t *len);
|
||||
__owur int SSL_get0_server_cert_type(const SSL *s, unsigned char **t, size_t *len);
|
||||
__owur int SSL_CTX_get0_client_cert_type(const SSL_CTX *ctx, unsigned char **t, size_t *len);
|
||||
__owur int SSL_CTX_get0_server_cert_type(const SSL_CTX *s, unsigned char **t, size_t *len);
|
||||
|
||||
# ifdef __cplusplus
|
||||
}
|
||||
# endif
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright 1995-2023 The OpenSSL Project Authors. All Rights Reserved.
|
||||
* Copyright 1995-2021 The OpenSSL Project Authors. All Rights Reserved.
|
||||
* Copyright (c) 2002, Oracle and/or its affiliates. All rights reserved
|
||||
*
|
||||
* Licensed under the Apache License 2.0 (the "License"). You may not use
|
||||
@@ -239,13 +239,6 @@ extern "C" {
|
||||
# define SSL3_RT_HEADER 0x100
|
||||
# define SSL3_RT_INNER_CONTENT_TYPE 0x101
|
||||
|
||||
/* Pseudo content types for QUIC */
|
||||
# define SSL3_RT_QUIC_DATAGRAM 0x200
|
||||
# define SSL3_RT_QUIC_PACKET 0x201
|
||||
# define SSL3_RT_QUIC_FRAME_FULL 0x202
|
||||
# define SSL3_RT_QUIC_FRAME_HEADER 0x203
|
||||
# define SSL3_RT_QUIC_FRAME_PADDING 0x204
|
||||
|
||||
# define SSL3_AL_WARNING 1
|
||||
# define SSL3_AL_FATAL 2
|
||||
|
||||
@@ -307,8 +300,6 @@ extern "C" {
|
||||
/* Set if extended master secret extension required on renegotiation */
|
||||
# define TLS1_FLAGS_REQUIRED_EXTMS 0x1000
|
||||
|
||||
/* 0x2000 is reserved for TLS1_FLAGS_QUIC (internal) */
|
||||
|
||||
# define SSL3_MT_HELLO_REQUEST 0
|
||||
# define SSL3_MT_CLIENT_HELLO 1
|
||||
# define SSL3_MT_SERVER_HELLO 2
|
||||
@@ -326,7 +317,6 @@ extern "C" {
|
||||
# define SSL3_MT_CERTIFICATE_STATUS 22
|
||||
# define SSL3_MT_SUPPLEMENTAL_DATA 23
|
||||
# define SSL3_MT_KEY_UPDATE 24
|
||||
# define SSL3_MT_COMPRESSED_CERTIFICATE 25
|
||||
# ifndef OPENSSL_NO_NEXTPROTONEG
|
||||
# define SSL3_MT_NEXT_PROTO 67
|
||||
# endif
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
/*
|
||||
* Generated by util/mkerr.pl DO NOT EDIT
|
||||
* Copyright 1995-2023 The OpenSSL Project Authors. All Rights Reserved.
|
||||
* Copyright 1995-2022 The OpenSSL Project Authors. All Rights Reserved.
|
||||
*
|
||||
* Licensed under the Apache License 2.0 (the "License"). You may not use
|
||||
* this file except in compliance with the License. You can obtain a copy
|
||||
@@ -25,10 +25,8 @@
|
||||
# define SSL_R_APP_DATA_IN_HANDSHAKE 100
|
||||
# define SSL_R_ATTEMPT_TO_REUSE_SESSION_IN_DIFFERENT_CONTEXT 272
|
||||
# define SSL_R_AT_LEAST_TLS_1_2_NEEDED_IN_SUITEB_MODE 158
|
||||
# define SSL_R_BAD_CERTIFICATE 348
|
||||
# define SSL_R_BAD_CHANGE_CIPHER_SPEC 103
|
||||
# define SSL_R_BAD_CIPHER 186
|
||||
# define SSL_R_BAD_COMPRESSION_ALGORITHM 326
|
||||
# define SSL_R_BAD_DATA 390
|
||||
# define SSL_R_BAD_DATA_RETURNED_BY_CALLBACK 106
|
||||
# define SSL_R_BAD_DECOMPRESSION 107
|
||||
@@ -84,7 +82,6 @@
|
||||
# define SSL_R_COMPRESSION_ID_NOT_WITHIN_PRIVATE_RANGE 307
|
||||
# define SSL_R_COMPRESSION_LIBRARY_ERROR 142
|
||||
# define SSL_R_CONNECTION_TYPE_NOT_SET 144
|
||||
# define SSL_R_CONN_USE_ONLY 356
|
||||
# define SSL_R_CONTEXT_NOT_DANE_ENABLED 167
|
||||
# define SSL_R_COOKIE_GEN_CALLBACK_FAILURE 400
|
||||
# define SSL_R_COOKIE_MISMATCH 308
|
||||
@@ -113,7 +110,6 @@
|
||||
# define SSL_R_ECC_CERT_NOT_FOR_SIGNING 318
|
||||
# define SSL_R_ECDH_REQUIRED_FOR_SUITEB_MODE 374
|
||||
# define SSL_R_EE_KEY_TOO_SMALL 399
|
||||
# define SSL_R_EMPTY_RAW_PUBLIC_KEY 349
|
||||
# define SSL_R_EMPTY_SRTP_PROTECTION_PROFILE_LIST 354
|
||||
# define SSL_R_ENCRYPTED_LENGTH_TOO_LONG 150
|
||||
# define SSL_R_ERROR_IN_RECEIVED_CIPHER_LIST 151
|
||||
@@ -123,7 +119,6 @@
|
||||
# define SSL_R_EXTENSION_NOT_RECEIVED 279
|
||||
# define SSL_R_EXTRA_DATA_IN_MESSAGE 153
|
||||
# define SSL_R_EXT_LENGTH_MISMATCH 163
|
||||
# define SSL_R_FAILED_TO_GET_PARAMETER 316
|
||||
# define SSL_R_FAILED_TO_INIT_ASYNC 405
|
||||
# define SSL_R_FRAGMENTED_CLIENT_HELLO 401
|
||||
# define SSL_R_GOT_A_FIN_BEFORE_A_CCS 154
|
||||
@@ -149,8 +144,6 @@
|
||||
# define SSL_R_INVALID_KEY_UPDATE_TYPE 120
|
||||
# define SSL_R_INVALID_MAX_EARLY_DATA 174
|
||||
# define SSL_R_INVALID_NULL_CMD_NAME 385
|
||||
# define SSL_R_INVALID_RAW_PUBLIC_KEY 350
|
||||
# define SSL_R_INVALID_RECORD 317
|
||||
# define SSL_R_INVALID_SEQUENCE_NUMBER 402
|
||||
# define SSL_R_INVALID_SERVERINFO_DATA 388
|
||||
# define SSL_R_INVALID_SESSION_ID 999
|
||||
@@ -163,7 +156,6 @@
|
||||
# define SSL_R_LENGTH_TOO_SHORT 160
|
||||
# define SSL_R_LIBRARY_BUG 274
|
||||
# define SSL_R_LIBRARY_HAS_NO_CIPHERS 161
|
||||
# define SSL_R_MAXIMUM_ENCRYPTED_PKTS_REACHED 395
|
||||
# define SSL_R_MISSING_DSA_SIGNING_CERT 165
|
||||
# define SSL_R_MISSING_ECDSA_SIGNING_CERT 381
|
||||
# define SSL_R_MISSING_FATAL 256
|
||||
@@ -204,11 +196,9 @@
|
||||
# define SSL_R_NO_SHARED_GROUPS 410
|
||||
# define SSL_R_NO_SHARED_SIGNATURE_ALGORITHMS 376
|
||||
# define SSL_R_NO_SRTP_PROFILES 359
|
||||
# define SSL_R_NO_STREAM 355
|
||||
# define SSL_R_NO_SUITABLE_DIGEST_ALGORITHM 297
|
||||
# define SSL_R_NO_SUITABLE_GROUPS 295
|
||||
# define SSL_R_NO_SUITABLE_KEY_SHARE 101
|
||||
# define SSL_R_NO_SUITABLE_RECORD_LAYER 322
|
||||
# define SSL_R_NO_SUITABLE_SIGNATURE_ALGORITHM 118
|
||||
# define SSL_R_NO_VALID_SCTS 216
|
||||
# define SSL_R_NO_VERIFY_COOKIE_CALLBACK 403
|
||||
@@ -231,16 +221,10 @@
|
||||
# define SSL_R_PSK_IDENTITY_NOT_FOUND 223
|
||||
# define SSL_R_PSK_NO_CLIENT_CB 224
|
||||
# define SSL_R_PSK_NO_SERVER_CB 225
|
||||
# define SSL_R_QUIC_HANDSHAKE_LAYER_ERROR 393
|
||||
# define SSL_R_QUIC_NETWORK_ERROR 387
|
||||
# define SSL_R_QUIC_PROTOCOL_ERROR 382
|
||||
# define SSL_R_READ_BIO_NOT_SET 211
|
||||
# define SSL_R_READ_TIMEOUT_EXPIRED 312
|
||||
# define SSL_R_RECORDS_NOT_RELEASED 321
|
||||
# define SSL_R_RECORD_LAYER_FAILURE 313
|
||||
# define SSL_R_RECORD_LENGTH_MISMATCH 213
|
||||
# define SSL_R_RECORD_TOO_SMALL 298
|
||||
# define SSL_R_REMOTE_PEER_ADDRESS_NOT_SET 346
|
||||
# define SSL_R_RENEGOTIATE_EXT_TOO_LONG 335
|
||||
# define SSL_R_RENEGOTIATION_ENCODING_ERR 336
|
||||
# define SSL_R_RENEGOTIATION_MISMATCH 337
|
||||
@@ -250,7 +234,6 @@
|
||||
# define SSL_R_REQUIRED_COMPRESSION_ALGORITHM_MISSING 342
|
||||
# define SSL_R_SCSV_RECEIVED_WHEN_RENEGOTIATING 345
|
||||
# define SSL_R_SCT_VERIFICATION_FAILED 208
|
||||
# define SSL_R_SEQUENCE_CTR_WRAPPED 327
|
||||
# define SSL_R_SERVERHELLO_TLSEXT 275
|
||||
# define SSL_R_SESSION_ID_CONTEXT_UNINITIALIZED 277
|
||||
# define SSL_R_SHUTDOWN_WHILE_IN_INIT 407
|
||||
@@ -290,11 +273,6 @@
|
||||
# define SSL_R_SSL_SESSION_ID_TOO_LONG 408
|
||||
# define SSL_R_SSL_SESSION_VERSION_MISMATCH 210
|
||||
# define SSL_R_STILL_IN_INIT 121
|
||||
# define SSL_R_STREAM_COUNT_LIMITED 411
|
||||
# define SSL_R_STREAM_FINISHED 365
|
||||
# define SSL_R_STREAM_RECV_ONLY 366
|
||||
# define SSL_R_STREAM_RESET 375
|
||||
# define SSL_R_STREAM_SEND_ONLY 379
|
||||
# define SSL_R_TLSV13_ALERT_CERTIFICATE_REQUIRED 1116
|
||||
# define SSL_R_TLSV13_ALERT_MISSING_EXTENSION 1109
|
||||
# define SSL_R_TLSV1_ALERT_ACCESS_DENIED 1049
|
||||
@@ -338,7 +316,6 @@
|
||||
# define SSL_R_UNKNOWN_COMMAND 139
|
||||
# define SSL_R_UNKNOWN_DIGEST 368
|
||||
# define SSL_R_UNKNOWN_KEY_EXCHANGE_TYPE 250
|
||||
# define SSL_R_UNKNOWN_MANDATORY_PARAMETER 323
|
||||
# define SSL_R_UNKNOWN_PKEY_TYPE 251
|
||||
# define SSL_R_UNKNOWN_PROTOCOL 252
|
||||
# define SSL_R_UNKNOWN_SSL_VERSION 254
|
||||
@@ -356,7 +333,6 @@
|
||||
# define SSL_R_WRONG_CERTIFICATE_TYPE 383
|
||||
# define SSL_R_WRONG_CIPHER_RETURNED 261
|
||||
# define SSL_R_WRONG_CURVE 378
|
||||
# define SSL_R_WRONG_RPK_TYPE 351
|
||||
# define SSL_R_WRONG_SIGNATURE_LENGTH 264
|
||||
# define SSL_R_WRONG_SIGNATURE_SIZE 265
|
||||
# define SSL_R_WRONG_SIGNATURE_TYPE 370
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright 2016-2023 The OpenSSL Project Authors. All Rights Reserved.
|
||||
* Copyright 2016-2021 The OpenSSL Project Authors. All Rights Reserved.
|
||||
*
|
||||
* Licensed under the Apache License 2.0 (the "License"). You may not use
|
||||
* this file except in compliance with the License. You can obtain a copy
|
||||
@@ -98,14 +98,6 @@ OSSL_DEPRECATEDIN_3_0 int OSSL_STORE_vctrl(OSSL_STORE_CTX *ctx, int cmd,
|
||||
*/
|
||||
OSSL_STORE_INFO *OSSL_STORE_load(OSSL_STORE_CTX *ctx);
|
||||
|
||||
/*
|
||||
* Deletes the object in the store by URI.
|
||||
* Returns 1 on success, 0 otherwise.
|
||||
*/
|
||||
int OSSL_STORE_delete(const char *uri, OSSL_LIB_CTX *libctx, const char *propq,
|
||||
const UI_METHOD *ui_method, void *ui_data,
|
||||
const OSSL_PARAM params[]);
|
||||
|
||||
/*
|
||||
* Check if end of data (end of file) is reached
|
||||
* Returns 1 on end, 0 otherwise.
|
||||
@@ -353,7 +345,7 @@ int OSSL_STORE_LOADER_set_close(OSSL_STORE_LOADER *loader,
|
||||
OSSL_DEPRECATEDIN_3_0
|
||||
const ENGINE *OSSL_STORE_LOADER_get0_engine(const OSSL_STORE_LOADER *loader);
|
||||
OSSL_DEPRECATEDIN_3_0
|
||||
const char *OSSL_STORE_LOADER_get0_scheme(const OSSL_STORE_LOADER *loader);
|
||||
const char * OSSL_STORE_LOADER_get0_scheme(const OSSL_STORE_LOADER *loader);
|
||||
OSSL_DEPRECATEDIN_3_0
|
||||
int OSSL_STORE_register_loader(OSSL_STORE_LOADER *loader);
|
||||
OSSL_DEPRECATEDIN_3_0
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright 1995-2023 The OpenSSL Project Authors. All Rights Reserved.
|
||||
* Copyright 1995-2022 The OpenSSL Project Authors. All Rights Reserved.
|
||||
* Copyright (c) 2002, Oracle and/or its affiliates. All rights reserved
|
||||
* Copyright 2005 Nokia. All rights reserved.
|
||||
*
|
||||
@@ -28,7 +28,7 @@ extern "C" {
|
||||
|
||||
/* Default security level if not overridden at config time */
|
||||
# ifndef OPENSSL_TLS_SECURITY_LEVEL
|
||||
# define OPENSSL_TLS_SECURITY_LEVEL 2
|
||||
# define OPENSSL_TLS_SECURITY_LEVEL 1
|
||||
# endif
|
||||
|
||||
/* TLS*_VERSION constants are defined in prov_ssl.h */
|
||||
@@ -122,14 +122,6 @@ extern "C" {
|
||||
*/
|
||||
# define TLSEXT_TYPE_signed_certificate_timestamp 18
|
||||
|
||||
/*
|
||||
* Extension type for Raw Public Keys
|
||||
* https://tools.ietf.org/html/rfc7250
|
||||
* https://www.iana.org/assignments/tls-extensiontype-values/tls-extensiontype-values.xhtml
|
||||
*/
|
||||
# define TLSEXT_TYPE_client_cert_type 19
|
||||
# define TLSEXT_TYPE_server_cert_type 20
|
||||
|
||||
/*
|
||||
* ExtensionType value for TLS padding extension.
|
||||
* http://tools.ietf.org/html/draft-agl-tls-padding
|
||||
@@ -142,9 +134,6 @@ extern "C" {
|
||||
/* ExtensionType value from RFC7627 */
|
||||
# define TLSEXT_TYPE_extended_master_secret 23
|
||||
|
||||
/* ExtensionType value from RFC8879 */
|
||||
# define TLSEXT_TYPE_compress_certificate 27
|
||||
|
||||
/* ExtensionType value from RFC4507 */
|
||||
# define TLSEXT_TYPE_session_ticket 35
|
||||
|
||||
@@ -158,7 +147,6 @@ extern "C" {
|
||||
# define TLSEXT_TYPE_post_handshake_auth 49
|
||||
# define TLSEXT_TYPE_signature_algorithms_cert 50
|
||||
# define TLSEXT_TYPE_key_share 51
|
||||
# define TLSEXT_TYPE_quic_transport_parameters 57
|
||||
|
||||
/* Temporary extension type */
|
||||
# define TLSEXT_TYPE_renegotiate 0xff01
|
||||
@@ -207,15 +195,6 @@ extern "C" {
|
||||
|
||||
# define TLSEXT_hash_num 10
|
||||
|
||||
/* Possible compression values from RFC8879 */
|
||||
/* Not defined in RFC8879, but used internally for no-compression */
|
||||
# define TLSEXT_comp_cert_none 0
|
||||
# define TLSEXT_comp_cert_zlib 1
|
||||
# define TLSEXT_comp_cert_brotli 2
|
||||
# define TLSEXT_comp_cert_zstd 3
|
||||
/* one more than the number of defined values - used as size of 0-terminated array */
|
||||
# define TLSEXT_comp_cert_limit 4
|
||||
|
||||
/* Flag set for unrecognised algorithms */
|
||||
# define TLSEXT_nid_unknown 0x1000000
|
||||
|
||||
@@ -232,15 +211,6 @@ extern "C" {
|
||||
# define TLSEXT_max_fragment_length_2048 3
|
||||
# define TLSEXT_max_fragment_length_4096 4
|
||||
|
||||
/*
|
||||
* TLS Certificate Type (for RFC7250)
|
||||
* https://www.iana.org/assignments/tls-extensiontype-values/tls-extensiontype-values.xhtml#tls-extensiontype-values-3
|
||||
*/
|
||||
# define TLSEXT_cert_type_x509 0
|
||||
# define TLSEXT_cert_type_pgp 1 /* recognized, but not supported */
|
||||
# define TLSEXT_cert_type_rpk 2
|
||||
# define TLSEXT_cert_type_1609dot2 3 /* recognized, but not supported */
|
||||
|
||||
int SSL_CTX_set_tlsext_max_fragment_length(SSL_CTX *ctx, uint8_t mode);
|
||||
int SSL_set_tlsext_max_fragment_length(SSL *ssl, uint8_t mode);
|
||||
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright 2019-2023 The OpenSSL Project Authors. All Rights Reserved.
|
||||
* Copyright 2019-2022 The OpenSSL Project Authors. All Rights Reserved.
|
||||
*
|
||||
* Licensed under the Apache License 2.0 (the "License"). You may not use
|
||||
* this file except in compliance with the License. You can obtain a copy
|
||||
@@ -305,14 +305,6 @@ void OSSL_trace_end(int category, BIO *channel);
|
||||
# define OSSL_TRACE9(category, format, arg1, arg2, arg3, arg4, arg5, arg6, arg7, arg8, arg9) \
|
||||
OSSL_TRACEV(category, (trc_out, format, arg1, arg2, arg3, arg4, arg5, arg6, arg7, arg8, arg9))
|
||||
|
||||
#define OSSL_TRACE_STRING_MAX 80
|
||||
int OSSL_trace_string(BIO *out, int text, int full,
|
||||
const unsigned char *data, size_t size);
|
||||
#define OSSL_TRACE_STRING(category, text, full, data, len) \
|
||||
OSSL_TRACE_BEGIN(category) { \
|
||||
OSSL_trace_string(trc_out, text, full, data, len); \
|
||||
} OSSL_TRACE_END(category)
|
||||
|
||||
# ifdef __cplusplus
|
||||
}
|
||||
# endif
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright 2006-2021 The OpenSSL Project Authors. All Rights Reserved.
|
||||
* Copyright 2006-2022 The OpenSSL Project Authors. All Rights Reserved.
|
||||
*
|
||||
* Licensed under the Apache License 2.0 (the "License"). You may not use
|
||||
* this file except in compliance with the License. You can obtain a copy
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright 2001-2021 The OpenSSL Project Authors. All Rights Reserved.
|
||||
* Copyright 2001-2022 The OpenSSL Project Authors. All Rights Reserved.
|
||||
*
|
||||
* Licensed under the Apache License 2.0 (the "License"). You may not use
|
||||
* this file except in compliance with the License. You can obtain a copy
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
/*
|
||||
* WARNING: do not edit!
|
||||
* Generated by Makefile from include/openssl/ui.h.in
|
||||
* Generated by Makefile from openssl-3.1.4/include/openssl/ui.h.in
|
||||
*
|
||||
* Copyright 2001-2020 The OpenSSL Project Authors. All Rights Reserved.
|
||||
*
|
||||
|
||||
@@ -1,8 +1,8 @@
|
||||
/*
|
||||
* WARNING: do not edit!
|
||||
* Generated by Makefile from include/openssl/x509.h.in
|
||||
* Generated by Makefile from openssl-3.1.4/include/openssl/x509.h.in
|
||||
*
|
||||
* Copyright 1995-2023 The OpenSSL Project Authors. All Rights Reserved.
|
||||
* Copyright 1995-2022 The OpenSSL Project Authors. All Rights Reserved.
|
||||
* Copyright (c) 2002, Oracle and/or its affiliates. All rights reserved
|
||||
*
|
||||
* Licensed under the Apache License 2.0 (the "License"). You may not use
|
||||
@@ -606,8 +606,6 @@ EVP_PKEY *d2i_PrivateKey_ex_fp(FILE *fp, EVP_PKEY **a, OSSL_LIB_CTX *libctx,
|
||||
const char *propq);
|
||||
EVP_PKEY *d2i_PrivateKey_fp(FILE *fp, EVP_PKEY **a);
|
||||
int i2d_PUBKEY_fp(FILE *fp, const EVP_PKEY *pkey);
|
||||
EVP_PKEY *d2i_PUBKEY_ex_fp(FILE *fp, EVP_PKEY **a, OSSL_LIB_CTX *libctx,
|
||||
const char *propq);
|
||||
EVP_PKEY *d2i_PUBKEY_fp(FILE *fp, EVP_PKEY **a);
|
||||
# endif
|
||||
|
||||
@@ -656,8 +654,6 @@ EVP_PKEY *d2i_PrivateKey_ex_bio(BIO *bp, EVP_PKEY **a, OSSL_LIB_CTX *libctx,
|
||||
const char *propq);
|
||||
EVP_PKEY *d2i_PrivateKey_bio(BIO *bp, EVP_PKEY **a);
|
||||
int i2d_PUBKEY_bio(BIO *bp, const EVP_PKEY *pkey);
|
||||
EVP_PKEY *d2i_PUBKEY_ex_bio(BIO *bp, EVP_PKEY **a, OSSL_LIB_CTX *libctx,
|
||||
const char *propq);
|
||||
EVP_PKEY *d2i_PUBKEY_bio(BIO *bp, EVP_PKEY **a);
|
||||
|
||||
DECLARE_ASN1_DUP_FUNCTION(X509)
|
||||
@@ -891,7 +887,7 @@ int X509_REQ_get_signature_nid(const X509_REQ *req);
|
||||
int i2d_re_X509_REQ_tbs(X509_REQ *req, unsigned char **pp);
|
||||
int X509_REQ_set_pubkey(X509_REQ *x, EVP_PKEY *pkey);
|
||||
EVP_PKEY *X509_REQ_get_pubkey(X509_REQ *req);
|
||||
EVP_PKEY *X509_REQ_get0_pubkey(const X509_REQ *req);
|
||||
EVP_PKEY *X509_REQ_get0_pubkey(X509_REQ *req);
|
||||
X509_PUBKEY *X509_REQ_get_X509_PUBKEY(X509_REQ *req);
|
||||
int X509_REQ_extension_nid(int nid);
|
||||
int *X509_REQ_get_extension_nids(void);
|
||||
@@ -957,14 +953,13 @@ X509_REVOKED_get0_extensions(const X509_REVOKED *r);
|
||||
X509_CRL *X509_CRL_diff(X509_CRL *base, X509_CRL *newer,
|
||||
EVP_PKEY *skey, const EVP_MD *md, unsigned int flags);
|
||||
|
||||
int X509_REQ_check_private_key(const X509_REQ *req, EVP_PKEY *pkey);
|
||||
int X509_REQ_check_private_key(X509_REQ *x509, EVP_PKEY *pkey);
|
||||
|
||||
int X509_check_private_key(const X509 *cert, const EVP_PKEY *pkey);
|
||||
int X509_check_private_key(const X509 *x509, const EVP_PKEY *pkey);
|
||||
int X509_chain_check_suiteb(int *perror_depth,
|
||||
X509 *x, STACK_OF(X509) *chain,
|
||||
unsigned long flags);
|
||||
int X509_CRL_check_suiteb(X509_CRL *crl, EVP_PKEY *pk, unsigned long flags);
|
||||
void OSSL_STACK_OF_X509_free(STACK_OF(X509) *certs);
|
||||
STACK_OF(X509) *X509_chain_up_ref(STACK_OF(X509) *chain);
|
||||
|
||||
int X509_issuer_and_serial_cmp(const X509 *a, const X509 *b);
|
||||
@@ -1270,8 +1265,6 @@ int PKCS8_pkey_add1_attr_by_OBJ(PKCS8_PRIV_KEY_INFO *p8, const ASN1_OBJECT *obj,
|
||||
int type, const unsigned char *bytes, int len);
|
||||
|
||||
|
||||
void X509_PUBKEY_set0_public_key(X509_PUBKEY *pub,
|
||||
unsigned char *penc, int penclen);
|
||||
int X509_PUBKEY_set0_param(X509_PUBKEY *pub, ASN1_OBJECT *aobj,
|
||||
int ptype, void *pval,
|
||||
unsigned char *penc, int penclen);
|
||||
|
||||
@@ -1,8 +1,8 @@
|
||||
/*
|
||||
* WARNING: do not edit!
|
||||
* Generated by Makefile from include/openssl/x509_vfy.h.in
|
||||
* Generated by Makefile from openssl-3.1.4/include/openssl/x509_vfy.h.in
|
||||
*
|
||||
* Copyright 1995-2023 The OpenSSL Project Authors. All Rights Reserved.
|
||||
* Copyright 1995-2021 The OpenSSL Project Authors. All Rights Reserved.
|
||||
*
|
||||
* Licensed under the Apache License 2.0 (the "License"). You may not use
|
||||
* this file except in compliance with the License. You can obtain a copy
|
||||
@@ -411,7 +411,6 @@ X509_LOOKUP_ctrl_ex((x), X509_L_ADD_STORE, (name), 0, NULL, \
|
||||
# define X509_V_ERR_CA_CERT_MISSING_KEY_USAGE 92
|
||||
# define X509_V_ERR_EXTENSIONS_REQUIRE_VERSION_3 93
|
||||
# define X509_V_ERR_EC_KEY_EXPLICIT_PARAMS 94
|
||||
# define X509_V_ERR_RPK_UNTRUSTED 95
|
||||
|
||||
/* Certificate verify flags */
|
||||
# ifndef OPENSSL_NO_DEPRECATED_1_1_0
|
||||
@@ -492,71 +491,71 @@ int X509_OBJECT_set1_X509(X509_OBJECT *a, X509 *obj);
|
||||
X509_CRL *X509_OBJECT_get0_X509_CRL(const X509_OBJECT *a);
|
||||
int X509_OBJECT_set1_X509_CRL(X509_OBJECT *a, X509_CRL *obj);
|
||||
X509_STORE *X509_STORE_new(void);
|
||||
void X509_STORE_free(X509_STORE *xs);
|
||||
int X509_STORE_lock(X509_STORE *xs);
|
||||
int X509_STORE_unlock(X509_STORE *xs);
|
||||
int X509_STORE_up_ref(X509_STORE *xs);
|
||||
STACK_OF(X509_OBJECT) *X509_STORE_get0_objects(const X509_STORE *xs);
|
||||
STACK_OF(X509) *X509_STORE_get1_all_certs(X509_STORE *xs);
|
||||
STACK_OF(X509) *X509_STORE_CTX_get1_certs(X509_STORE_CTX *xs,
|
||||
void X509_STORE_free(X509_STORE *v);
|
||||
int X509_STORE_lock(X509_STORE *ctx);
|
||||
int X509_STORE_unlock(X509_STORE *ctx);
|
||||
int X509_STORE_up_ref(X509_STORE *v);
|
||||
STACK_OF(X509_OBJECT) *X509_STORE_get0_objects(const X509_STORE *v);
|
||||
STACK_OF(X509) *X509_STORE_get1_all_certs(X509_STORE *st);
|
||||
STACK_OF(X509) *X509_STORE_CTX_get1_certs(X509_STORE_CTX *st,
|
||||
const X509_NAME *nm);
|
||||
STACK_OF(X509_CRL) *X509_STORE_CTX_get1_crls(const X509_STORE_CTX *st,
|
||||
const X509_NAME *nm);
|
||||
int X509_STORE_set_flags(X509_STORE *xs, unsigned long flags);
|
||||
int X509_STORE_set_purpose(X509_STORE *xs, int purpose);
|
||||
int X509_STORE_set_trust(X509_STORE *xs, int trust);
|
||||
int X509_STORE_set1_param(X509_STORE *xs, const X509_VERIFY_PARAM *pm);
|
||||
X509_VERIFY_PARAM *X509_STORE_get0_param(const X509_STORE *xs);
|
||||
int X509_STORE_set_flags(X509_STORE *ctx, unsigned long flags);
|
||||
int X509_STORE_set_purpose(X509_STORE *ctx, int purpose);
|
||||
int X509_STORE_set_trust(X509_STORE *ctx, int trust);
|
||||
int X509_STORE_set1_param(X509_STORE *ctx, const X509_VERIFY_PARAM *pm);
|
||||
X509_VERIFY_PARAM *X509_STORE_get0_param(const X509_STORE *ctx);
|
||||
|
||||
void X509_STORE_set_verify(X509_STORE *xs, X509_STORE_CTX_verify_fn verify);
|
||||
void X509_STORE_set_verify(X509_STORE *ctx, X509_STORE_CTX_verify_fn verify);
|
||||
#define X509_STORE_set_verify_func(ctx, func) \
|
||||
X509_STORE_set_verify((ctx),(func))
|
||||
void X509_STORE_CTX_set_verify(X509_STORE_CTX *ctx,
|
||||
X509_STORE_CTX_verify_fn verify);
|
||||
X509_STORE_CTX_verify_fn X509_STORE_get_verify(const X509_STORE *xs);
|
||||
void X509_STORE_set_verify_cb(X509_STORE *xs,
|
||||
X509_STORE_CTX_verify_fn X509_STORE_get_verify(const X509_STORE *ctx);
|
||||
void X509_STORE_set_verify_cb(X509_STORE *ctx,
|
||||
X509_STORE_CTX_verify_cb verify_cb);
|
||||
# define X509_STORE_set_verify_cb_func(ctx,func) \
|
||||
X509_STORE_set_verify_cb((ctx),(func))
|
||||
X509_STORE_CTX_verify_cb X509_STORE_get_verify_cb(const X509_STORE *xs);
|
||||
void X509_STORE_set_get_issuer(X509_STORE *xs,
|
||||
X509_STORE_CTX_verify_cb X509_STORE_get_verify_cb(const X509_STORE *ctx);
|
||||
void X509_STORE_set_get_issuer(X509_STORE *ctx,
|
||||
X509_STORE_CTX_get_issuer_fn get_issuer);
|
||||
X509_STORE_CTX_get_issuer_fn X509_STORE_get_get_issuer(const X509_STORE *xs);
|
||||
void X509_STORE_set_check_issued(X509_STORE *xs,
|
||||
X509_STORE_CTX_get_issuer_fn X509_STORE_get_get_issuer(const X509_STORE *ctx);
|
||||
void X509_STORE_set_check_issued(X509_STORE *ctx,
|
||||
X509_STORE_CTX_check_issued_fn check_issued);
|
||||
X509_STORE_CTX_check_issued_fn X509_STORE_get_check_issued(const X509_STORE *s);
|
||||
void X509_STORE_set_check_revocation(X509_STORE *xs,
|
||||
X509_STORE_CTX_check_issued_fn X509_STORE_get_check_issued(const X509_STORE *ctx);
|
||||
void X509_STORE_set_check_revocation(X509_STORE *ctx,
|
||||
X509_STORE_CTX_check_revocation_fn check_revocation);
|
||||
X509_STORE_CTX_check_revocation_fn
|
||||
X509_STORE_get_check_revocation(const X509_STORE *xs);
|
||||
void X509_STORE_set_get_crl(X509_STORE *xs,
|
||||
X509_STORE_get_check_revocation(const X509_STORE *ctx);
|
||||
void X509_STORE_set_get_crl(X509_STORE *ctx,
|
||||
X509_STORE_CTX_get_crl_fn get_crl);
|
||||
X509_STORE_CTX_get_crl_fn X509_STORE_get_get_crl(const X509_STORE *xs);
|
||||
void X509_STORE_set_check_crl(X509_STORE *xs,
|
||||
X509_STORE_CTX_get_crl_fn X509_STORE_get_get_crl(const X509_STORE *ctx);
|
||||
void X509_STORE_set_check_crl(X509_STORE *ctx,
|
||||
X509_STORE_CTX_check_crl_fn check_crl);
|
||||
X509_STORE_CTX_check_crl_fn X509_STORE_get_check_crl(const X509_STORE *xs);
|
||||
void X509_STORE_set_cert_crl(X509_STORE *xs,
|
||||
X509_STORE_CTX_check_crl_fn X509_STORE_get_check_crl(const X509_STORE *ctx);
|
||||
void X509_STORE_set_cert_crl(X509_STORE *ctx,
|
||||
X509_STORE_CTX_cert_crl_fn cert_crl);
|
||||
X509_STORE_CTX_cert_crl_fn X509_STORE_get_cert_crl(const X509_STORE *xs);
|
||||
void X509_STORE_set_check_policy(X509_STORE *xs,
|
||||
X509_STORE_CTX_cert_crl_fn X509_STORE_get_cert_crl(const X509_STORE *ctx);
|
||||
void X509_STORE_set_check_policy(X509_STORE *ctx,
|
||||
X509_STORE_CTX_check_policy_fn check_policy);
|
||||
X509_STORE_CTX_check_policy_fn X509_STORE_get_check_policy(const X509_STORE *s);
|
||||
void X509_STORE_set_lookup_certs(X509_STORE *xs,
|
||||
X509_STORE_CTX_check_policy_fn X509_STORE_get_check_policy(const X509_STORE *ctx);
|
||||
void X509_STORE_set_lookup_certs(X509_STORE *ctx,
|
||||
X509_STORE_CTX_lookup_certs_fn lookup_certs);
|
||||
X509_STORE_CTX_lookup_certs_fn X509_STORE_get_lookup_certs(const X509_STORE *s);
|
||||
void X509_STORE_set_lookup_crls(X509_STORE *xs,
|
||||
X509_STORE_CTX_lookup_certs_fn X509_STORE_get_lookup_certs(const X509_STORE *ctx);
|
||||
void X509_STORE_set_lookup_crls(X509_STORE *ctx,
|
||||
X509_STORE_CTX_lookup_crls_fn lookup_crls);
|
||||
#define X509_STORE_set_lookup_crls_cb(ctx, func) \
|
||||
X509_STORE_set_lookup_crls((ctx), (func))
|
||||
X509_STORE_CTX_lookup_crls_fn X509_STORE_get_lookup_crls(const X509_STORE *xs);
|
||||
void X509_STORE_set_cleanup(X509_STORE *xs,
|
||||
X509_STORE_CTX_lookup_crls_fn X509_STORE_get_lookup_crls(const X509_STORE *ctx);
|
||||
void X509_STORE_set_cleanup(X509_STORE *ctx,
|
||||
X509_STORE_CTX_cleanup_fn cleanup);
|
||||
X509_STORE_CTX_cleanup_fn X509_STORE_get_cleanup(const X509_STORE *xs);
|
||||
X509_STORE_CTX_cleanup_fn X509_STORE_get_cleanup(const X509_STORE *ctx);
|
||||
|
||||
#define X509_STORE_get_ex_new_index(l, p, newf, dupf, freef) \
|
||||
CRYPTO_get_ex_new_index(CRYPTO_EX_INDEX_X509_STORE, l, p, newf, dupf, freef)
|
||||
int X509_STORE_set_ex_data(X509_STORE *xs, int idx, void *data);
|
||||
void *X509_STORE_get_ex_data(const X509_STORE *xs, int idx);
|
||||
int X509_STORE_set_ex_data(X509_STORE *ctx, int idx, void *data);
|
||||
void *X509_STORE_get_ex_data(const X509_STORE *ctx, int idx);
|
||||
|
||||
X509_STORE_CTX *X509_STORE_CTX_new_ex(OSSL_LIB_CTX *libctx, const char *propq);
|
||||
X509_STORE_CTX *X509_STORE_CTX_new(void);
|
||||
@@ -566,14 +565,11 @@ int X509_STORE_CTX_get1_issuer(X509 **issuer, X509_STORE_CTX *ctx, X509 *x);
|
||||
void X509_STORE_CTX_free(X509_STORE_CTX *ctx);
|
||||
int X509_STORE_CTX_init(X509_STORE_CTX *ctx, X509_STORE *trust_store,
|
||||
X509 *target, STACK_OF(X509) *untrusted);
|
||||
int X509_STORE_CTX_init_rpk(X509_STORE_CTX *ctx, X509_STORE *trust_store,
|
||||
EVP_PKEY* rpk);
|
||||
void X509_STORE_CTX_set0_trusted_stack(X509_STORE_CTX *ctx, STACK_OF(X509) *sk);
|
||||
void X509_STORE_CTX_cleanup(X509_STORE_CTX *ctx);
|
||||
|
||||
X509_STORE *X509_STORE_CTX_get0_store(const X509_STORE_CTX *ctx);
|
||||
X509 *X509_STORE_CTX_get0_cert(const X509_STORE_CTX *ctx);
|
||||
EVP_PKEY *X509_STORE_CTX_get0_rpk(const X509_STORE_CTX *ctx);
|
||||
STACK_OF(X509)* X509_STORE_CTX_get0_untrusted(const X509_STORE_CTX *ctx);
|
||||
void X509_STORE_CTX_set0_untrusted(X509_STORE_CTX *ctx, STACK_OF(X509) *sk);
|
||||
void X509_STORE_CTX_set_verify_cb(X509_STORE_CTX *ctx,
|
||||
@@ -583,8 +579,6 @@ X509_STORE_CTX_verify_fn X509_STORE_CTX_get_verify(const X509_STORE_CTX *ctx);
|
||||
X509_STORE_CTX_get_issuer_fn X509_STORE_CTX_get_get_issuer(const X509_STORE_CTX *ctx);
|
||||
X509_STORE_CTX_check_issued_fn X509_STORE_CTX_get_check_issued(const X509_STORE_CTX *ctx);
|
||||
X509_STORE_CTX_check_revocation_fn X509_STORE_CTX_get_check_revocation(const X509_STORE_CTX *ctx);
|
||||
void X509_STORE_CTX_set_get_crl(X509_STORE_CTX *ctx,
|
||||
X509_STORE_CTX_get_crl_fn get_crl);
|
||||
X509_STORE_CTX_get_crl_fn X509_STORE_CTX_get_get_crl(const X509_STORE_CTX *ctx);
|
||||
X509_STORE_CTX_check_crl_fn X509_STORE_CTX_get_check_crl(const X509_STORE_CTX *ctx);
|
||||
X509_STORE_CTX_cert_crl_fn X509_STORE_CTX_get_cert_crl(const X509_STORE_CTX *ctx);
|
||||
@@ -606,7 +600,7 @@ X509_STORE_CTX_cleanup_fn X509_STORE_CTX_get_cleanup(const X509_STORE_CTX *ctx);
|
||||
# define X509_STORE_get1_crl X509_STORE_CTX_get1_crls
|
||||
#endif
|
||||
|
||||
X509_LOOKUP *X509_STORE_add_lookup(X509_STORE *xs, X509_LOOKUP_METHOD *m);
|
||||
X509_LOOKUP *X509_STORE_add_lookup(X509_STORE *v, X509_LOOKUP_METHOD *m);
|
||||
X509_LOOKUP_METHOD *X509_LOOKUP_hash_dir(void);
|
||||
X509_LOOKUP_METHOD *X509_LOOKUP_file(void);
|
||||
X509_LOOKUP_METHOD *X509_LOOKUP_store(void);
|
||||
@@ -691,8 +685,8 @@ X509_LOOKUP_get_by_alias_fn X509_LOOKUP_meth_get_get_by_alias(
|
||||
const X509_LOOKUP_METHOD *method);
|
||||
|
||||
|
||||
int X509_STORE_add_cert(X509_STORE *xs, X509 *x);
|
||||
int X509_STORE_add_crl(X509_STORE *xs, X509_CRL *x);
|
||||
int X509_STORE_add_cert(X509_STORE *ctx, X509 *x);
|
||||
int X509_STORE_add_crl(X509_STORE *ctx, X509_CRL *x);
|
||||
|
||||
int X509_STORE_CTX_get_by_subject(const X509_STORE_CTX *vs,
|
||||
X509_LOOKUP_TYPE type,
|
||||
@@ -736,21 +730,23 @@ void *X509_LOOKUP_get_method_data(const X509_LOOKUP *ctx);
|
||||
X509_STORE *X509_LOOKUP_get_store(const X509_LOOKUP *ctx);
|
||||
int X509_LOOKUP_shutdown(X509_LOOKUP *ctx);
|
||||
|
||||
int X509_STORE_load_file(X509_STORE *xs, const char *file);
|
||||
int X509_STORE_load_path(X509_STORE *xs, const char *path);
|
||||
int X509_STORE_load_store(X509_STORE *xs, const char *store);
|
||||
int X509_STORE_load_locations(X509_STORE *s, const char *file, const char *dir);
|
||||
int X509_STORE_set_default_paths(X509_STORE *xs);
|
||||
int X509_STORE_load_file(X509_STORE *ctx, const char *file);
|
||||
int X509_STORE_load_path(X509_STORE *ctx, const char *path);
|
||||
int X509_STORE_load_store(X509_STORE *ctx, const char *store);
|
||||
int X509_STORE_load_locations(X509_STORE *ctx,
|
||||
const char *file,
|
||||
const char *dir);
|
||||
int X509_STORE_set_default_paths(X509_STORE *ctx);
|
||||
|
||||
int X509_STORE_load_file_ex(X509_STORE *xs, const char *file,
|
||||
int X509_STORE_load_file_ex(X509_STORE *ctx, const char *file,
|
||||
OSSL_LIB_CTX *libctx, const char *propq);
|
||||
int X509_STORE_load_store_ex(X509_STORE *xs, const char *store,
|
||||
int X509_STORE_load_store_ex(X509_STORE *ctx, const char *store,
|
||||
OSSL_LIB_CTX *libctx, const char *propq);
|
||||
int X509_STORE_load_locations_ex(X509_STORE *xs,
|
||||
const char *file, const char *dir,
|
||||
OSSL_LIB_CTX *libctx, const char *propq);
|
||||
int X509_STORE_set_default_paths_ex(X509_STORE *xs,
|
||||
OSSL_LIB_CTX *libctx, const char *propq);
|
||||
int X509_STORE_load_locations_ex(X509_STORE *ctx, const char *file,
|
||||
const char *dir, OSSL_LIB_CTX *libctx,
|
||||
const char *propq);
|
||||
int X509_STORE_set_default_paths_ex(X509_STORE *ctx, OSSL_LIB_CTX *libctx,
|
||||
const char *propq);
|
||||
|
||||
#define X509_STORE_CTX_get_ex_new_index(l, p, newf, dupf, freef) \
|
||||
CRYPTO_get_ex_new_index(CRYPTO_EX_INDEX_X509_STORE_CTX, l, p, newf, dupf, freef)
|
||||
@@ -768,7 +764,6 @@ X509_STORE_CTX *X509_STORE_CTX_get0_parent_ctx(const X509_STORE_CTX *ctx);
|
||||
STACK_OF(X509) *X509_STORE_CTX_get0_chain(const X509_STORE_CTX *ctx);
|
||||
STACK_OF(X509) *X509_STORE_CTX_get1_chain(const X509_STORE_CTX *ctx);
|
||||
void X509_STORE_CTX_set_cert(X509_STORE_CTX *ctx, X509 *target);
|
||||
void X509_STORE_CTX_set0_rpk(X509_STORE_CTX *ctx, EVP_PKEY *target);
|
||||
void X509_STORE_CTX_set0_verified_chain(X509_STORE_CTX *c, STACK_OF(X509) *sk);
|
||||
void X509_STORE_CTX_set0_crls(X509_STORE_CTX *ctx, STACK_OF(X509_CRL) *sk);
|
||||
int X509_STORE_CTX_set_purpose(X509_STORE_CTX *ctx, int purpose);
|
||||
@@ -778,8 +773,6 @@ int X509_STORE_CTX_purpose_inherit(X509_STORE_CTX *ctx, int def_purpose,
|
||||
void X509_STORE_CTX_set_flags(X509_STORE_CTX *ctx, unsigned long flags);
|
||||
void X509_STORE_CTX_set_time(X509_STORE_CTX *ctx, unsigned long flags,
|
||||
time_t t);
|
||||
void X509_STORE_CTX_set_current_reasons(X509_STORE_CTX *ctx,
|
||||
unsigned int current_reasons);
|
||||
|
||||
X509_POLICY_TREE *X509_STORE_CTX_get0_policy_tree(const X509_STORE_CTX *ctx);
|
||||
int X509_STORE_CTX_get_explicit_policy(const X509_STORE_CTX *ctx);
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
/*
|
||||
* Generated by util/mkerr.pl DO NOT EDIT
|
||||
* Copyright 1995-2021 The OpenSSL Project Authors. All Rights Reserved.
|
||||
* Copyright 1995-2023 The OpenSSL Project Authors. All Rights Reserved.
|
||||
*
|
||||
* Licensed under the Apache License 2.0 (the "License"). You may not use
|
||||
* this file except in compliance with the License. You can obtain a copy
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
/*
|
||||
* WARNING: do not edit!
|
||||
* Generated by Makefile from include/openssl/x509v3.h.in
|
||||
* Generated by Makefile from openssl-3.1.4/include/openssl/x509v3.h.in
|
||||
*
|
||||
* Copyright 1999-2023 The OpenSSL Project Authors. All Rights Reserved.
|
||||
*
|
||||
@@ -742,10 +742,9 @@ SKM_DEFINE_STACK_OF_INTERNAL(X509_PURPOSE, X509_PURPOSE, X509_PURPOSE)
|
||||
# define X509_PURPOSE_ANY 7
|
||||
# define X509_PURPOSE_OCSP_HELPER 8
|
||||
# define X509_PURPOSE_TIMESTAMP_SIGN 9
|
||||
# define X509_PURPOSE_CODE_SIGN 10
|
||||
|
||||
# define X509_PURPOSE_MIN 1
|
||||
# define X509_PURPOSE_MAX 10
|
||||
# define X509_PURPOSE_MAX 9
|
||||
|
||||
/* Flags for X509V3_EXT_print() */
|
||||
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
/*
|
||||
* Generated by util/mkerr.pl DO NOT EDIT
|
||||
* Copyright 1995-2022 The OpenSSL Project Authors. All Rights Reserved.
|
||||
* Copyright 1995-2021 The OpenSSL Project Authors. All Rights Reserved.
|
||||
*
|
||||
* Licensed under the Apache License 2.0 (the "License"). You may not use
|
||||
* this file except in compliance with the License. You can obtain a copy
|
||||
@@ -23,8 +23,6 @@
|
||||
*/
|
||||
# define X509V3_R_BAD_IP_ADDRESS 118
|
||||
# define X509V3_R_BAD_OBJECT 119
|
||||
# define X509V3_R_BAD_OPTION 170
|
||||
# define X509V3_R_BAD_VALUE 171
|
||||
# define X509V3_R_BN_DEC2BN_ERROR 100
|
||||
# define X509V3_R_BN_TO_ASN1_INTEGER_ERROR 101
|
||||
# define X509V3_R_DIRNAME_ERROR 149
|
||||
@@ -88,7 +86,6 @@
|
||||
# define X509V3_R_UNKNOWN_EXTENSION 129
|
||||
# define X509V3_R_UNKNOWN_EXTENSION_NAME 130
|
||||
# define X509V3_R_UNKNOWN_OPTION 120
|
||||
# define X509V3_R_UNKNOWN_VALUE 172
|
||||
# define X509V3_R_UNSUPPORTED_OPTION 117
|
||||
# define X509V3_R_UNSUPPORTED_TYPE 167
|
||||
# define X509V3_R_USER_TOO_LONG 132
|
||||
|
||||
|
Before Width: | Height: | Size: 30 KiB After Width: | Height: | Size: 25 KiB |
@@ -23,6 +23,7 @@ class InfoFragment : Fragment() {
|
||||
savedInstanceState: Bundle?
|
||||
): View {
|
||||
_binding = InfoBinding.inflate(inflater, container, false)
|
||||
(activity as MainActivity).fragmentReady()
|
||||
return binding.root
|
||||
}
|
||||
|
||||
@@ -34,7 +35,6 @@ class InfoFragment : Fragment() {
|
||||
}
|
||||
|
||||
fun show(tvViewModel: TVViewModel) {
|
||||
Log.i("", "show")
|
||||
binding.textView.text = tvViewModel.title.value
|
||||
Glide.with(this)
|
||||
.load(tvViewModel.logo.value)
|
||||
@@ -51,13 +51,12 @@ class InfoFragment : Fragment() {
|
||||
|
||||
override fun onPause() {
|
||||
super.onPause()
|
||||
Log.i("", "onPause")
|
||||
Log.i(TAG, "onPause")
|
||||
// Cancel the delayed task when the fragment is paused
|
||||
handler.removeCallbacks(removeRunnable)
|
||||
}
|
||||
|
||||
private val removeRunnable = Runnable {
|
||||
Log.i("", "hide")
|
||||
view?.visibility = View.GONE
|
||||
}
|
||||
|
||||
|
||||
@@ -85,7 +85,6 @@ class MainActivity : FragmentActivity() {
|
||||
val transaction = supportFragmentManager.beginTransaction()
|
||||
|
||||
if (mainFragment.isHidden) {
|
||||
focusMainFragment()
|
||||
transaction.show(mainFragment)
|
||||
} else {
|
||||
transaction.hide(mainFragment)
|
||||
@@ -94,10 +93,6 @@ class MainActivity : FragmentActivity() {
|
||||
transaction.commit()
|
||||
}
|
||||
|
||||
private fun focusMainFragment() {
|
||||
mainFragment.focus()
|
||||
}
|
||||
|
||||
private fun mainFragmentIsHidden(): Boolean {
|
||||
return mainFragment.isHidden
|
||||
}
|
||||
@@ -110,6 +105,10 @@ class MainActivity : FragmentActivity() {
|
||||
}
|
||||
}
|
||||
|
||||
fun fragmentReady() {
|
||||
mainFragment.fragmentReady()
|
||||
}
|
||||
|
||||
override fun onTouchEvent(event: MotionEvent?): Boolean {
|
||||
if (event != null) {
|
||||
gestureDetector.onTouchEvent(event)
|
||||
@@ -214,9 +213,6 @@ class MainActivity : FragmentActivity() {
|
||||
|
||||
KeyEvent.KEYCODE_DPAD_CENTER -> {
|
||||
Log.i(TAG, "KEYCODE_DPAD_CENTER")
|
||||
// if (mainFragment.isHidden) {
|
||||
// mainFragment.checkProgram()
|
||||
// }
|
||||
switchMainFragment()
|
||||
}
|
||||
|
||||
@@ -246,28 +242,28 @@ class MainActivity : FragmentActivity() {
|
||||
}
|
||||
|
||||
KeyEvent.KEYCODE_DPAD_LEFT -> {
|
||||
if (mainFragment.isHidden) {
|
||||
prevSource()
|
||||
} else {
|
||||
// if (mainFragment.tvListViewModel.getTVViewModelCurrent()
|
||||
// ?.getItemPosition() == 0
|
||||
// ) {
|
||||
//// mainFragment.toLastPosition()
|
||||
// hideMainFragment()
|
||||
// }
|
||||
}
|
||||
// if (mainFragment.isHidden) {
|
||||
// prevSource()
|
||||
// } else {
|
||||
//// if (mainFragment.tvListViewModel.getTVViewModelCurrent()
|
||||
//// ?.getItemPosition() == 0
|
||||
//// ) {
|
||||
////// mainFragment.toLastPosition()
|
||||
//// hideMainFragment()
|
||||
//// }
|
||||
// }
|
||||
}
|
||||
|
||||
KeyEvent.KEYCODE_DPAD_RIGHT -> {
|
||||
if (mainFragment.isHidden) {
|
||||
nextSource()
|
||||
} else {
|
||||
// if (mainFragment.tvListViewModel.getTVViewModelCurrent()
|
||||
// ?.getItemPosition() == mainFragment.tvListViewModel.maxNum[mainFragment.selectedPosition] - 1
|
||||
// ) {
|
||||
// mainFragment.toFirstPosition()
|
||||
// }
|
||||
}
|
||||
// if (mainFragment.isHidden) {
|
||||
// nextSource()
|
||||
// } else {
|
||||
//// if (mainFragment.tvListViewModel.getTVViewModelCurrent()
|
||||
//// ?.getItemPosition() == mainFragment.tvListViewModel.maxNum[mainFragment.selectedPosition] - 1
|
||||
//// ) {
|
||||
//// mainFragment.toFirstPosition()
|
||||
//// }
|
||||
// }
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -6,6 +6,7 @@ import android.os.Bundle
|
||||
import android.os.Handler
|
||||
import android.os.Looper
|
||||
import android.util.Log
|
||||
import android.view.View
|
||||
import androidx.leanback.app.BrowseSupportFragment
|
||||
import androidx.leanback.widget.ArrayObjectAdapter
|
||||
import androidx.leanback.widget.HeaderItem
|
||||
@@ -41,6 +42,8 @@ class MainFragment : BrowseSupportFragment() {
|
||||
private val handler = Handler(Looper.getMainLooper())
|
||||
private lateinit var mUpdateProgramRunnable: UpdateProgramRunnable
|
||||
|
||||
private var ready = 0
|
||||
|
||||
override fun onCreate(savedInstanceState: Bundle?) {
|
||||
super.onCreate(savedInstanceState)
|
||||
headersState = HEADERS_DISABLED
|
||||
@@ -52,16 +55,14 @@ class MainFragment : BrowseSupportFragment() {
|
||||
sharedPref = activity?.getPreferences(Context.MODE_PRIVATE)
|
||||
|
||||
request = activity?.let { Request(it) }
|
||||
|
||||
loadRows()
|
||||
mUpdateProgramRunnable = UpdateProgramRunnable()
|
||||
handler.post(mUpdateProgramRunnable)
|
||||
|
||||
setupEventListeners()
|
||||
|
||||
view?.post {
|
||||
// request?.fetchPage()
|
||||
// tvListViewModel.getTVViewModel(0)?.let { request?.fetchProgram(it) }
|
||||
}
|
||||
mUpdateProgramRunnable = UpdateProgramRunnable()
|
||||
handler.post(mUpdateProgramRunnable)
|
||||
|
||||
tvListViewModel.getTVListViewModel().value?.forEach { tvViewModel ->
|
||||
tvViewModel.ready.observe(viewLifecycleOwner) { _ ->
|
||||
|
||||
@@ -78,7 +79,7 @@ class MainFragment : BrowseSupportFragment() {
|
||||
if (tvViewModel.change.value != null) {
|
||||
val title = tvViewModel.title.value
|
||||
Log.i(TAG, "switch $title")
|
||||
if (tvViewModel.ysp() != null) {
|
||||
if (tvViewModel.pid.value != null) {
|
||||
Log.i(TAG, "request $title")
|
||||
lifecycleScope.launch(Dispatchers.IO) {
|
||||
tvViewModel.let { request?.fetchData(it) }
|
||||
@@ -102,11 +103,21 @@ class MainFragment : BrowseSupportFragment() {
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
fragmentReady()
|
||||
}
|
||||
|
||||
override fun onViewCreated(view: View, savedInstanceState: Bundle?) {
|
||||
super.onViewCreated(view, savedInstanceState)
|
||||
}
|
||||
|
||||
override fun onDestroy() {
|
||||
super.onDestroy()
|
||||
handler.removeCallbacks(mUpdateProgramRunnable)
|
||||
with(sharedPref!!.edit()) {
|
||||
putInt("position", itemPosition)
|
||||
apply()
|
||||
}
|
||||
}
|
||||
|
||||
fun updateProgram(tvViewModel: TVViewModel) {
|
||||
@@ -195,26 +206,22 @@ class MainFragment : BrowseSupportFragment() {
|
||||
itemPosition = sharedPref?.getInt("position", 0)!!
|
||||
if (itemPosition >= tvListViewModel.size()) {
|
||||
itemPosition = 0
|
||||
savePosition(0)
|
||||
}
|
||||
|
||||
val tvViewModel = tvListViewModel.getTVViewModel(itemPosition)
|
||||
tvViewModel?.changed()
|
||||
|
||||
(activity as? MainActivity)?.switchMainFragment()
|
||||
}
|
||||
|
||||
fun focus() {
|
||||
if (!view?.isFocused!!) {
|
||||
view?.requestFocus()
|
||||
tvListViewModel.setItemPosition(itemPosition)
|
||||
}
|
||||
}
|
||||
|
||||
fun savePosition(position: Int) {
|
||||
tvListViewModel.setItemPosition(position)
|
||||
with(sharedPref!!.edit()) {
|
||||
putInt("position", position)
|
||||
apply()
|
||||
fun fragmentReady() {
|
||||
ready++
|
||||
Log.i(TAG, "ready $ready")
|
||||
if (ready == 3) {
|
||||
|
||||
// request?.fetchPage()
|
||||
// tvListViewModel.getTVViewModel(0)?.let { request?.fetchProgram(it) }
|
||||
|
||||
val tvViewModel = tvListViewModel.getTVViewModel(itemPosition)
|
||||
tvViewModel?.changed()
|
||||
|
||||
(activity as? MainActivity)?.switchMainFragment()
|
||||
}
|
||||
}
|
||||
|
||||
@@ -224,7 +231,7 @@ class MainFragment : BrowseSupportFragment() {
|
||||
if (itemPosition == -1) {
|
||||
itemPosition = tvListViewModel.size() - 1
|
||||
}
|
||||
savePosition(itemPosition)
|
||||
tvListViewModel.setItemPosition(itemPosition)
|
||||
|
||||
val tvViewModel = tvListViewModel.getTVViewModel(itemPosition)
|
||||
tvViewModel?.changed()
|
||||
@@ -237,7 +244,7 @@ class MainFragment : BrowseSupportFragment() {
|
||||
if (itemPosition == tvListViewModel.size()) {
|
||||
itemPosition = 0
|
||||
}
|
||||
savePosition(itemPosition)
|
||||
tvListViewModel.setItemPosition(itemPosition)
|
||||
|
||||
val tvViewModel = tvListViewModel.getTVViewModel(itemPosition)
|
||||
tvViewModel?.changed()
|
||||
@@ -293,7 +300,7 @@ class MainFragment : BrowseSupportFragment() {
|
||||
if (item is TVViewModel) {
|
||||
if (itemPosition != item.id.value!!) {
|
||||
itemPosition = item.id.value!!
|
||||
savePosition(itemPosition)
|
||||
tvListViewModel.setItemPosition(itemPosition)
|
||||
|
||||
val tvViewModel = tvListViewModel.getTVViewModel(itemPosition)
|
||||
tvViewModel?.changed()
|
||||
|
||||
@@ -14,6 +14,9 @@ import androidx.media3.common.Player
|
||||
import androidx.media3.common.VideoSize
|
||||
import androidx.media3.common.util.UnstableApi
|
||||
import androidx.media3.exoplayer.ExoPlayer
|
||||
import androidx.media3.exoplayer.analytics.AnalyticsListener
|
||||
import androidx.media3.exoplayer.source.LoadEventInfo
|
||||
import androidx.media3.exoplayer.source.MediaLoadData
|
||||
import androidx.media3.ui.PlayerView
|
||||
import com.lizongying.mytv.databinding.PlayerBinding
|
||||
import com.lizongying.mytv.models.TVViewModel
|
||||
@@ -23,7 +26,6 @@ class PlayerFragment : Fragment() {
|
||||
|
||||
private var _binding: PlayerBinding? = null
|
||||
private var playerView: PlayerView? = null
|
||||
private var videoUrl: String? = null
|
||||
private var tvViewModel: TVViewModel? = null
|
||||
|
||||
override fun onCreateView(
|
||||
@@ -46,25 +48,29 @@ class PlayerFragment : Fragment() {
|
||||
override fun onVideoSizeChanged(videoSize: VideoSize) {
|
||||
val aspectRatio = 16f / 9f
|
||||
val layoutParams = playerView?.layoutParams
|
||||
layoutParams?.width =
|
||||
(playerView?.measuredHeight?.times(aspectRatio))?.toInt()
|
||||
playerView?.layoutParams = layoutParams
|
||||
val ratio = playerView?.measuredWidth?.div(playerView?.measuredHeight!!)
|
||||
if (ratio != null) {
|
||||
if (ratio < aspectRatio) {
|
||||
layoutParams?.height =
|
||||
(playerView?.measuredWidth?.div(aspectRatio))?.toInt()
|
||||
playerView?.layoutParams = layoutParams
|
||||
} else if (ratio > aspectRatio) {
|
||||
layoutParams?.width =
|
||||
(playerView?.measuredHeight?.times(aspectRatio))?.toInt()
|
||||
playerView?.layoutParams = layoutParams
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
override fun onPlayerError(error: PlaybackException) {
|
||||
super.onPlayerError(error)
|
||||
|
||||
Log.e(TAG, "PlaybackException $error")
|
||||
}
|
||||
//
|
||||
// override fun onPlayerError(error: PlaybackException) {
|
||||
// super.onPlayerError(error)
|
||||
// }
|
||||
})
|
||||
if (videoUrl !== null) {
|
||||
playerView!!.player?.run {
|
||||
videoUrl?.let { MediaItem.fromUri(it) }?.let { setMediaItem(it) }
|
||||
prepare()
|
||||
}
|
||||
videoUrl = null
|
||||
}
|
||||
}
|
||||
})
|
||||
Log.i(TAG, "PlayerFragment onCreateView")
|
||||
(activity as MainActivity).fragmentReady()
|
||||
return _binding!!.root
|
||||
}
|
||||
|
||||
@@ -73,35 +79,89 @@ class PlayerFragment : Fragment() {
|
||||
this.tvViewModel = tvViewModel
|
||||
val videoUrlCurrent =
|
||||
tvViewModel.videoIndex.value?.let { tvViewModel.videoUrl.value?.get(it) }
|
||||
if (playerView == null || playerView?.player == null) {
|
||||
Log.i(TAG, "playerView not ready $view}")
|
||||
videoUrl = videoUrlCurrent
|
||||
} else {
|
||||
Log.i(TAG, "playerView ok")
|
||||
playerView?.player?.run {
|
||||
val mediaItem = MediaItem.Builder()
|
||||
tvViewModel.id.value?.let { mediaItem.setMediaId(it.toString()) }
|
||||
videoUrlCurrent?.let { mediaItem.setUri(it) }
|
||||
setMediaItem(mediaItem.build())
|
||||
prepare()
|
||||
}
|
||||
playerView?.player?.run {
|
||||
val mediaItem = MediaItem.Builder()
|
||||
tvViewModel.id.value?.let { mediaItem.setMediaId(it.toString()) }
|
||||
videoUrlCurrent?.let { mediaItem.setUri(it) }
|
||||
setMediaItem(mediaItem.build())
|
||||
prepare()
|
||||
|
||||
// val httpDataSource = DefaultHttpDataSource.Factory()
|
||||
// val hls = HlsMediaSource.Factory(httpDataSource).createMediaSource(
|
||||
// MediaItem.fromUri(
|
||||
// Uri.parse(videoUrlCurrent)
|
||||
// )
|
||||
// )
|
||||
// val analyticsListener: AnalyticsListener= MyAnalyticsListener()
|
||||
// val exoPlayer = playerView?.player as ExoPlayer
|
||||
// exoPlayer.addAnalyticsListener(analyticsListener)
|
||||
// exoPlayer.setMediaSource(hls)
|
||||
// exoPlayer.playWhenReady = true
|
||||
//
|
||||
//
|
||||
// exoPlayer.let {
|
||||
// val parameters =
|
||||
// TrackSelectionParameters.Builder().setPreferredAudioMimeType("application/id3").build()
|
||||
// // 更新轨道选择器参数
|
||||
// exoPlayer.trackSelector?.parameters = parameters
|
||||
// Log.i(TAG, "parameters $parameters")
|
||||
// }
|
||||
//
|
||||
// // 获取当前轨道组
|
||||
//
|
||||
// playerView?.player = exoPlayer
|
||||
// playerView?.player?.prepare()
|
||||
|
||||
|
||||
//
|
||||
// if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.JELLY_BEAN) {
|
||||
// val codecList = MediaCodecList(MediaCodecList.ALL_CODECS)
|
||||
// val codecInfos = codecList.codecInfos
|
||||
//
|
||||
// for (codecInfo in codecInfos) {
|
||||
//
|
||||
// val supportedTypes = codecInfo.supportedTypes
|
||||
// for (type in supportedTypes) {
|
||||
// Log.d("supportedTypes", "$type")
|
||||
//// if (type.equals(androidx.media3.exoplayer.mediacode, ignoreCase = true)) {
|
||||
//// Log.d("AudioCodecChecker", "Device supports MPEG-L2")
|
||||
//// return
|
||||
//// }
|
||||
// }
|
||||
// }
|
||||
//
|
||||
// Log.d("AudioCodecChecker", "Device does not support MPEG-L2")
|
||||
// }
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
override fun onPause() {
|
||||
super.onPause()
|
||||
if (playerView != null) {
|
||||
playerView!!.player?.stop()
|
||||
@UnstableApi
|
||||
class MyAnalyticsListener : AnalyticsListener {
|
||||
override fun onLoadStarted(
|
||||
eventTime: AnalyticsListener.EventTime,
|
||||
loadEventInfo: LoadEventInfo,
|
||||
mediaLoadData: MediaLoadData
|
||||
) {
|
||||
super.onLoadStarted(eventTime, loadEventInfo, mediaLoadData)
|
||||
// Log.i(TAG, "loadEventInfo.uri ${loadEventInfo.uri} ${mediaLoadData.trackFormat.toString()}")
|
||||
}
|
||||
}
|
||||
|
||||
override fun onResume() {
|
||||
super.onResume()
|
||||
override fun onStart() {
|
||||
super.onStart()
|
||||
if (playerView != null) {
|
||||
playerView!!.player?.play()
|
||||
}
|
||||
}
|
||||
|
||||
override fun onStop() {
|
||||
super.onStop()
|
||||
if (playerView != null) {
|
||||
playerView!!.player?.stop()
|
||||
}
|
||||
}
|
||||
|
||||
override fun onDestroy() {
|
||||
super.onDestroy()
|
||||
if (playerView != null) {
|
||||
|
||||
@@ -180,7 +180,7 @@ class Request(var context: Context) {
|
||||
?.enqueue(object : Callback<Void> {
|
||||
override fun onResponse(call: Call<Void>, response: Response<Void>) {
|
||||
if (response.isSuccessful) {
|
||||
Log.d(TAG, "$title kvcollect success")
|
||||
// Log.d(TAG, "$title kvcollect success")
|
||||
} else {
|
||||
Log.e(TAG, "$title kvcollect status error")
|
||||
tvModel.firstSource()
|
||||
|
||||
@@ -10,6 +10,7 @@ data class TV(
|
||||
var logo: String = "",
|
||||
var pid: String = "",
|
||||
var sid: String = "",
|
||||
var programId: String = "",
|
||||
) : Serializable {
|
||||
|
||||
override fun toString(): String {
|
||||
@@ -21,6 +22,7 @@ data class TV(
|
||||
", logo='" + logo + '\'' +
|
||||
", pid='" + pid + '\'' +
|
||||
", sid='" + sid + '\'' +
|
||||
", programId='" + programId + '\'' +
|
||||
'}'
|
||||
}
|
||||
|
||||
|
||||
@@ -5,36 +5,222 @@ object TVList {
|
||||
setupTV()
|
||||
}
|
||||
|
||||
private var mappingLogo = mapOf(
|
||||
"CCTV4K 超高清" to "https://resources.yangshipin.cn/assets/oms/image/202306/3e9d06fd7244d950df5838750f1c6ac3456e172b51caca2c16d2282125b111e8.png?imageMogr2/format/webp",
|
||||
"CCTV1 综合" to "https://resources.yangshipin.cn/assets/oms/image/202306/d57905b93540bd15f0c48230dbbbff7ee0d645ff539e38866e2d15c8b9f7dfcd.png?imageMogr2/format/webp",
|
||||
"CCTV2 财经" to "https://resources.yangshipin.cn/assets/oms/image/202306/20115388de0207131af17eac86c33049b95d69eaff064e55653a1b941810a006.png?imageMogr2/format/webp",
|
||||
"CCTV3 综艺" to "https://resources.yangshipin.cn/assets/oms/image/202306/7b7a65c712450da3deb6ca66fbacf4f9aee00d3f20bd80eafb5ada01ec63eb3a.png?imageMogr2/format/webp",
|
||||
"CCTV4 中文国际" to "https://resources.yangshipin.cn/assets/oms/image/202306/f357e58fdbcc076a3d65e1f958c942b2e14f14342c60736ceed98b092d35356a.png?imageMogr2/format/webp",
|
||||
"CCTV5 体育" to "https://resources.yangshipin.cn/assets/oms/image/202306/0a6a7138952675983a3d854df7688557b286d59aa06166edae51506f9204d655.png?imageMogr2/format/webp",
|
||||
"CCTV5+ 体育赛事" to "https://resources.yangshipin.cn/assets/oms/image/202306/649ad76a90bfef55b05db9fe52e006487280f619089099d5dc971e387fc6eff0.png?imageMogr2/format/webp",
|
||||
"CCTV6 电影" to "https://resources.yangshipin.cn/assets/oms/image/202306/741515efda91f03f455df8a7da4ee11fa9329139c276435cf0a9e2af398d5bf2.png?imageMogr2/format/webp",
|
||||
"CCTV7 国防军事" to "https://resources.yangshipin.cn/assets/oms/image/202306/b29af94e295ebdf646cefb68122c429b9cd921f498ca20d2d8070252536f9ff9.png?imageMogr2/format/webp",
|
||||
"CCTV8 电视剧" to "https://resources.yangshipin.cn/assets/oms/image/202306/ad51de94426a0ba039e6dd6a8534ea98ecc813a6176bde87b4f18cc34d6d7590.png?imageMogr2/format/webp",
|
||||
"CCTV9 记录" to "https://resources.yangshipin.cn/assets/oms/image/202306/2ed1b4deeca179d5db806bb941790f82eb92a1b7299c1c38fe027f95a5caee5e.png?imageMogr2/format/webp",
|
||||
"CCTV10 科教" to "https://resources.yangshipin.cn/assets/oms/image/202306/aa6157ec65188cd41826e5a2f088c3d6d153205f5f6428258d12c59999e221aa.png?imageMogr2/format/webp",
|
||||
"CCTV11 戏曲" to "https://resources.yangshipin.cn/assets/oms/image/202306/ed12ed7c7a1034dae4350011fe039284c5d5a836506b28c9e32e3c75299625c0.png?imageMogr2/format/webp",
|
||||
"CCTV12 社会与法" to "https://resources.yangshipin.cn/assets/oms/image/202306/484083cffaa40df7e659565e8cb4d1cc740158a185512114167aa21fa0c59240.png?imageMogr2/format/webp",
|
||||
"CCTV13 新闻" to "https://resources.yangshipin.cn/assets/oms/image/202306/266da7b43c03e2312186b4a999e0f060e8f15b10d2cc2c9aa32171819254cf1a.png?imageMogr2/format/webp",
|
||||
"CCTV14 少儿" to "https://resources.yangshipin.cn/assets/oms/image/202306/af6b603896938dc346fbb16abfc63c12cba54b0ec9d18770a15d347d115f12d5.png?imageMogr2/format/webp",
|
||||
"CCTV15 音乐" to "https://resources.yangshipin.cn/assets/oms/image/202306/2ceee92188ef684efe0d8b90839c4f3ad450d179dc64d59beff417059453af47.png?imageMogr2/format/webp",
|
||||
"CCTV16 奥林匹克" to "https://resources.yangshipin.cn/assets/oms/image/202306/53793fa7bacd3a93ff6dc5d2758418985e1f952a316c335d663b572d8bdcd74d.png?imageMogr2/format/webp",
|
||||
"CCTV17 农业农村" to "https://resources.yangshipin.cn/assets/oms/image/202306/ddef563072f8bad2bea5b9e52674cb7b4ed50efb20c26e61994dfbdf05c1e3c0.png?imageMogr2/format/webp",
|
||||
"CGTN" to "https://resources.yangshipin.cn/assets/oms/image/202306/a72dff758ca1c17cd0ecc8cedc11b893d208f409d5e6302faa0e9d298848abc3.png?imageMogr2/format/webp",
|
||||
"CGTN 法语频道" to "https://resources.yangshipin.cn/assets/oms/image/202306/a8d0046a47433d952bf6ed17062deb8bd2184ba9aec0f7781df6bf9487a3ffcf.png?imageMogr2/format/webp",
|
||||
"CGTN 俄语频道" to "https://resources.yangshipin.cn/assets/oms/image/202306/bf0a820893cbaf20dd0333e27042e1ef9c8806e5b602b6a8c95af399db0bc77a.png?imageMogr2/format/webp",
|
||||
"CGTN 阿拉伯语频道" to "https://resources.yangshipin.cn/assets/oms/image/202306/2e44e2aa3e7a1cedf07fd0ae59fe69e86a60a2632660a006e3e9e7397b2d107e.png?imageMogr2/format/webp",
|
||||
"CGTN 西班牙语频道" to "https://resources.yangshipin.cn/assets/oms/image/202309/7c337e3dbe64402ec7e4678a619a4a6d95144e42f35161181ff78e143b7cf67a.png?imageMogr2/format/webp",
|
||||
"CGTN 纪录频道" to "https://resources.yangshipin.cn/assets/oms/image/202309/74d3ac436a7e374879578de1d87a941fbf566d39d5632b027c5097891ed32bd5.png?imageMogr2/format/webp",
|
||||
|
||||
"风云剧场" to "https://resources.yangshipin.cn/assets/oms/image/202306/4d549e53e6d0f632d5a633d1945280797b153e588f919221a07faa869812cc89.png?imageMogr2/format/webp",
|
||||
"第一剧场" to "https://resources.yangshipin.cn/assets/oms/image/202306/a556bd7d93ce65e18f243a8892b5604f4faa994a4897315914216a710a706208.png?imageMogr2/format/webp",
|
||||
"怀旧剧场" to "https://resources.yangshipin.cn/assets/oms/image/202306/5661bd04fecdb6e899f801147a22ab5d3a475bf2b62e30aec2c0023190ebc9b1.png?imageMogr2/format/webp",
|
||||
"风云音乐" to "https://resources.yangshipin.cn/assets/oms/image/202306/bbf1d024c5228b8dd128b0e3cb1717d173fab4ee84c3a4c8a57b1a215362ca3b.png?imageMogr2/format/webp",
|
||||
"兵器科技" to "https://resources.yangshipin.cn/assets/oms/image/202306/4c6b6a6d3839889f34d33db3c2f80233b26b74d3489b393487635f8704e70796.png?imageMogr2/format/webp",
|
||||
"风云足球" to "https://resources.yangshipin.cn/assets/oms/image/202306/cd1e2bb52b06a991de168733e5ff0f1d85adc8042d40c8f393f723543e5dd08a.png?imageMogr2/format/webp",
|
||||
"高尔夫网球" to "https://resources.yangshipin.cn/assets/oms/image/202306/cdd1b31ede7a5ad049ed53d9a072422f829e72dd062ed2c19e077fdd01699071.png?imageMogr2/format/webp",
|
||||
"女性时尚" to "https://resources.yangshipin.cn/assets/oms/image/202306/fa28955ce8b2539d728bf4c6a13a46ff57ad76eae46627f7bcfb1ed8a613d3fc.png?imageMogr2/format/webp",
|
||||
"央视文化精品" to "https://resources.yangshipin.cn/assets/oms/image/202306/14ac5ce40482cacd3d4b37435222bfe86af2b452a2f04ecbfc1d13d76edd7c57.png?imageMogr2/format/webp",
|
||||
"央视台球" to "https://resources.yangshipin.cn/assets/oms/image/202306/10e14a92478011aa6c3c8562e62127f3b1908e29fcd78e4b2b24b9e6d3ec2fbc.png?imageMogr2/format/webp",
|
||||
"电视指南" to "https://resources.yangshipin.cn/assets/oms/image/202306/244d72c0eb1615ed7d51c2f5db5a67f306aa3f58c05bc2d34de3aa7e956dc8c9.png?imageMogr2/format/webp",
|
||||
"卫生健康" to "https://resources.yangshipin.cn/assets/oms/image/202306/54a6863656fdfd8f803be193ddf22441c5000a108833889816fd2d8911715ce8.png?imageMogr2/format/webp",
|
||||
|
||||
"东方卫视" to "https://resources.yangshipin.cn/assets/oms/image/202306/9bd372ca292a82ce3aa08772b07efc4af1f85c21d1f268ea33440c49e9a0a488.png?imageMogr2/format/webp",
|
||||
"湖南卫视" to "https://resources.yangshipin.cn/assets/oms/image/202306/4120e89d3079d08aa17d382f69a2308ec70839b278367763c34a34666c75cb88.png?imageMogr2/format/webp",
|
||||
"湖北卫视" to "https://resources.yangshipin.cn/assets/oms/image/202306/7a6be5a2bb1dc53a945c016ff1f525dc4a84c51db371c15c89aa55404b0ba784.png?imageMogr2/format/webp",
|
||||
"辽宁卫视" to "https://resources.yangshipin.cn/assets/oms/image/202306/ac4ed6058a87c101ae7147ebc38905d0cae047fb73fd277ee5049b84f52bda36.png?imageMogr2/format/webp",
|
||||
"江苏卫视" to "https://resources.yangshipin.cn/assets/oms/image/202306/380ad685c0c1d5b2c902246b8d2df6d3f9b45e2837abcfe493075bbded597a31.png?imageMogr2/format/webp",
|
||||
"江西卫视" to "https://resources.yangshipin.cn/assets/oms/image/202306/3c760d0d00463855890e8a1864ea4a6b6dd66b90c29b4ac714a4b17c16519871.png?imageMogr2/format/webp",
|
||||
"山东卫视" to "https://resources.yangshipin.cn/assets/oms/image/202306/22d403f07a7cf5410b3ad3ddb65a11aa229a32475fac213f5344c9f0ec330ca1.png?imageMogr2/format/webp",
|
||||
"广东卫视" to "https://resources.yangshipin.cn/assets/oms/image/202306/28886880a4dc0f06fb7e0a528a1def0591d61a65870e29176ede0cc92033bbfd.png?imageMogr2/format/webp",
|
||||
"广西卫视" to "https://resources.yangshipin.cn/assets/oms/image/202306/54b7e97cb816bb223fe05f3fc44da2c7820eb66e8550c19d23100f2c414ecc38.png?imageMogr2/format/webp",
|
||||
"重庆卫视" to "https://resources.yangshipin.cn/assets/oms/image/202306/657651f411de2673d1770d9a78b44c1265704f7468cc41d4be7f51d630768494.png?imageMogr2/format/webp",
|
||||
"河南卫视" to "https://resources.yangshipin.cn/assets/oms/image/202306/74925962148a6d31c85808b6cd4e444c2a54bab393d2c5fc85e960b50e22fa86.png?imageMogr2/format/webp",
|
||||
"河北卫视" to "https://resources.yangshipin.cn/assets/oms/image/202306/d545becdc81c60197b08c7f47380705e4665ed3fe55efc8b855e486f6e655378.png?imageMogr2/format/webp",
|
||||
"贵州卫视" to "https://resources.yangshipin.cn/assets/oms/image/202306/4eb45f4781d33d872af027dc01c941559aab55667dd99cc5c22bef7037807b13.png?imageMogr2/format/webp",
|
||||
"北京卫视" to "https://resources.yangshipin.cn/assets/oms/image/202306/f4f23633c578beea49a3841d88d3490100f029ee349059fa532869db889872c5.png?imageMogr2/format/webp",
|
||||
"黑龙江卫视" to "https://resources.yangshipin.cn/assets/oms/image/202306/d8273ae9be698ce2db21f5b886ecac95a73429593f93713c60ed8c12c38bf0d3.png?imageMogr2/format/webp",
|
||||
"浙江卫视" to "https://resources.yangshipin.cn/assets/oms/image/202306/a66c836bd98ba3e41a2e9a570d4b9c50dedc6839e9de333e2e78212ad505f37e.png?imageMogr2/format/webp",
|
||||
"安徽卫视" to "https://resources.yangshipin.cn/assets/oms/image/202306/f35fa04b51b1ee4984b03578b65403570868ebca03c6c01e11b097f999a58d9b.png?imageMogr2/format/webp",
|
||||
"深圳卫视" to "https://resources.yangshipin.cn/assets/oms/image/202306/d59fec04c902e3581c617136d02d4b9b8c4cbe64272781ddd3525e80c823edb7.png?imageMogr2/format/webp",
|
||||
"四川卫视" to "https://resources.yangshipin.cn/assets/oms/image/202306/3276a414ae0eaa0f116f2045cd913367967d0c7c1e978e8621ac3879436c6ed7.png?imageMogr2/format/webp",
|
||||
"东南卫视" to "https://resources.yangshipin.cn/assets/oms/image/202306/3208fe6564a293c21b711333fb3edb05bb5b406cff840573c9a8d839680a1579.png?imageMogr2/format/webp",
|
||||
"海南卫视" to "https://resources.yangshipin.cn/assets/oms/image/202306/6e060391fde0469801fc3d84dbf204b4f8d650d251f17d7595a6964c0bb99e81.png?imageMogr2/format/webp",
|
||||
)
|
||||
private var mappingEPG = mapOf(
|
||||
"CCTV4K 超高清" to "600002264",
|
||||
"CCTV1 综合" to "600001859",
|
||||
"CCTV2 财经" to "600001800",
|
||||
"CCTV3 综艺" to "600001801",
|
||||
"CCTV4 中文国际" to "600001814",
|
||||
"CCTV5 体育" to "600001818",
|
||||
"CCTV5+ 体育赛事" to "600001817",
|
||||
"CCTV6 电影" to "600001802",
|
||||
"CCTV7 国防军事" to "600004092",
|
||||
"CCTV8 电视剧" to "600001803",
|
||||
"CCTV9 记录" to "600004078",
|
||||
"CCTV10 科教" to "600001805",
|
||||
"CCTV11 戏曲" to "600001806",
|
||||
"CCTV12 社会与法" to "600001807",
|
||||
"CCTV13 新闻" to "600001811",
|
||||
"CCTV14 少儿" to "600001809",
|
||||
"CCTV15 音乐" to "600001815",
|
||||
"CCTV16 奥林匹克" to "600098637",
|
||||
"CCTV17 农业农村" to "600001810",
|
||||
"CGTN" to "600014550",
|
||||
"CGTN 法语频道" to "600084704",
|
||||
"CGTN 俄语频道" to "600084758",
|
||||
"CGTN 阿拉伯语频道" to "600084782",
|
||||
"CGTN 西班牙语频道" to "600084744",
|
||||
"CGTN 记录频道" to "600084781",
|
||||
|
||||
"风云剧场" to "600099658",
|
||||
"第一剧场" to "600099655",
|
||||
"怀旧剧场" to "600099620",
|
||||
"风云音乐" to "600099660",
|
||||
"兵器科技" to "600099649",
|
||||
"风云足球" to "600099636",
|
||||
"高尔夫网球" to "600099659",
|
||||
"女性时尚" to "600099650",
|
||||
"央视文化精品" to "600099653",
|
||||
"央视台球" to "600099652",
|
||||
"电视指南" to "600099656",
|
||||
"卫生健康" to "600099651",
|
||||
|
||||
"东方卫视" to "600002483",
|
||||
"湖南卫视" to "600002475",
|
||||
"湖北卫视" to "600002508",
|
||||
"辽宁卫视" to "600002505",
|
||||
"江苏卫视" to "600002521",
|
||||
"江西卫视" to "600002503",
|
||||
"山东卫视" to "600002513",
|
||||
"广东卫视" to "600002485",
|
||||
"广西卫视" to "600002509",
|
||||
"重庆卫视" to "600002531",
|
||||
"河南卫视" to "600002525",
|
||||
"河北卫视" to "600002493",
|
||||
"贵州卫视" to "600002490",
|
||||
"北京卫视" to "600002309",
|
||||
"黑龙江卫视" to "600002498",
|
||||
"浙江卫视" to "600002520",
|
||||
"安徽卫视" to "600002532",
|
||||
"深圳卫视" to "600002481",
|
||||
"四川卫视" to "600002516",
|
||||
"东南卫视" to "600002484",
|
||||
"海南卫视" to "600002506",
|
||||
)
|
||||
private var mappingVideo = mapOf(
|
||||
"CCTV4K 超高清" to arrayOf("600002264", "2000266303"),
|
||||
"CCTV1 综合" to arrayOf("600001859", "2000210103"),
|
||||
"CCTV2 财经" to arrayOf("600001800", "2000203603"),
|
||||
// "CCTV3 综艺" to arrayOf("600001801",""),
|
||||
"CCTV4 中文国际" to arrayOf("600001814", "2000204803"),
|
||||
"CCTV5 体育" to arrayOf("600001818", "2000205103"),
|
||||
"CCTV5+ 体育赛事" to arrayOf("600001817", "2000204503"),
|
||||
// "CCTV6 电影" to arrayOf("600001802",""),
|
||||
"CCTV7 国防军事" to arrayOf("600004092", "2000510003"),
|
||||
// "CCTV8 电视剧" to arrayOf("600001803",""),
|
||||
"CCTV9 记录" to arrayOf("600004078", "2000499403"),
|
||||
"CCTV10 科教" to arrayOf("600001805", "2000203503"),
|
||||
"CCTV11 戏曲" to arrayOf("600001806", "2000204103"),
|
||||
"CCTV12 社会与法" to arrayOf("600001807", "2000202603"),
|
||||
// "CCTV13 新闻" to arrayOf("600001811",""),
|
||||
"CCTV14 少儿" to arrayOf("600001809", "2000204403"),
|
||||
"CCTV15 音乐" to arrayOf("600001815", "2000205003"),
|
||||
"CCTV16 奥林匹克" to arrayOf("600098637", "2012375003"),
|
||||
"CCTV17 农业农村" to arrayOf("600001810", "2000204203"),
|
||||
"CGTN" to arrayOf("600014550", "2001656803"),
|
||||
"CGTN 法语频道" to arrayOf("600084704", "2010153503"),
|
||||
"CGTN 俄语频道" to arrayOf("600084758", "2010152603"),
|
||||
"CGTN 阿拉伯语频道" to arrayOf("600084782", "2010155203"),
|
||||
"CGTN 西班牙语频道" to arrayOf("600084744", "2010152503"),
|
||||
"CGTN 记录频道" to arrayOf("600084781", "2010155403"),
|
||||
|
||||
// "风云剧场" to arrayOf("600099658",""),
|
||||
// "第一剧场" to arrayOf("600099655",""),
|
||||
// "怀旧剧场" to arrayOf("600099620",""),
|
||||
// "风云音乐" to arrayOf("600099660",""),
|
||||
// "兵器科技" to arrayOf("600099649",""),
|
||||
// "风云足球" to arrayOf("600099636",""),
|
||||
// "高尔夫网球" to arrayOf("600099659",""),
|
||||
// "女性时尚" to arrayOf("600099650",""),
|
||||
// "央视文化精品" to arrayOf("600099653",""),
|
||||
// "央视台球" to arrayOf("600099652",""),
|
||||
// "电视指南" to arrayOf("600099656",""),
|
||||
// "卫生健康" to arrayOf("600099651",""),
|
||||
|
||||
"东方卫视" to arrayOf("600002483", "2000292403"),
|
||||
"湖南卫视" to arrayOf("600002475", "2000296203"),
|
||||
"湖北卫视" to arrayOf("600002508", "2000294503"),
|
||||
"辽宁卫视" to arrayOf("600002505", "2000281303"),
|
||||
"江苏卫视" to arrayOf("600002521", "2000295603"),
|
||||
"江西卫视" to arrayOf("600002503", "2000294103"),
|
||||
"山东卫视" to arrayOf("600002513", "2000294803"),
|
||||
"广东卫视" to arrayOf("600002485", "2000292703"),
|
||||
"广西卫视" to arrayOf("600002509", "2000294203"),
|
||||
"重庆卫视" to arrayOf("600002531", "2000297803"),
|
||||
"河南卫视" to arrayOf("600002525", "2000296103"),
|
||||
"河北卫视" to arrayOf("600002493", "2000293403"),
|
||||
"贵州卫视" to arrayOf("600002490", "2000293303"),
|
||||
"北京卫视" to arrayOf("600002309", "2000272103"),
|
||||
"黑龙江卫视" to arrayOf("600002498", "2000293903"),
|
||||
"浙江卫视" to arrayOf("600002520", "2000295503"),
|
||||
"安徽卫视" to arrayOf("600002532", "2000298003"),
|
||||
"深圳卫视" to arrayOf("600002481", "2000292203"),
|
||||
"四川卫视" to arrayOf("600002516", "2000295003"),
|
||||
"东南卫视" to arrayOf("600002484", "2000292503"),
|
||||
"海南卫视" to arrayOf("600002506", "2000291503"),
|
||||
)
|
||||
private var count: Int = 0
|
||||
|
||||
private fun setupTV(): Map<String, List<TV>> {
|
||||
val tvs = """
|
||||
央视频道
|
||||
CCTV4K 超高清,,https://resources.yangshipin.cn/assets/oms/image/202306/3e9d06fd7244d950df5838750f1c6ac3456e172b51caca2c16d2282125b111e8.png?imageMogr2/format/webp,600002264,2000266303
|
||||
CCTV1 综合,http://dbiptv.sn.chinamobile.com/PLTV/88888890/224/3221226231/index.m3u8,https://resources.yangshipin.cn/assets/oms/image/202306/d57905b93540bd15f0c48230dbbbff7ee0d645ff539e38866e2d15c8b9f7dfcd.png?imageMogr2/format/webp,600001859,2000210103
|
||||
CCTV2 财经,http://dbiptv.sn.chinamobile.com/PLTV/88888890/224/3221226195/index.m3u8,https://resources.yangshipin.cn/assets/oms/image/202306/20115388de0207131af17eac86c33049b95d69eaff064e55653a1b941810a006.png?imageMogr2/format/webp,600001800,2000203603
|
||||
CCTV4K 超高清,
|
||||
CCTV1 综合,http://dbiptv.sn.chinamobile.com/PLTV/88888890/224/3221226231/index.m3u8
|
||||
CCTV2 财经,http://dbiptv.sn.chinamobile.com/PLTV/88888890/224/3221226195/index.m3u8
|
||||
CCTV3 综艺,http://dbiptv.sn.chinamobile.com/PLTV/88888890/224/3221226397/index.m3u8
|
||||
CCTV4 中文国际,http://39.134.24.161/dbiptv.sn.chinamobile.com/PLTV/88888890/224/3221226191/index.m3u8;http://dbiptv.sn.chinamobile.com/PLTV/88888890/224/3221226191/index.m3u8,https://resources.yangshipin.cn/assets/oms/image/202306/f357e58fdbcc076a3d65e1f958c942b2e14f14342c60736ceed98b092d35356a.png?imageMogr2/format/webp,600001814,2000204803
|
||||
CCTV5 体育,http://dbiptv.sn.chinamobile.com/PLTV/88888890/224/3221226395/index.m3u8,https://resources.yangshipin.cn/assets/oms/image/202306/0a6a7138952675983a3d854df7688557b286d59aa06166edae51506f9204d655.png?imageMogr2/format/webp,600001818,2000205103
|
||||
CCTV5+ 体育赛事,http://dbiptv.sn.chinamobile.com/PLTV/88888890/224/3221226221/index.m3u8,https://resources.yangshipin.cn/assets/oms/image/202306/649ad76a90bfef55b05db9fe52e006487280f619089099d5dc971e387fc6eff0.png?imageMogr2/format/webp,600001817,2000204503
|
||||
CCTV4 中文国际,http://39.134.24.161/dbiptv.sn.chinamobile.com/PLTV/88888890/224/3221226191/index.m3u8;http://dbiptv.sn.chinamobile.com/PLTV/88888890/224/3221226191/index.m3u8
|
||||
CCTV5 体育,http://dbiptv.sn.chinamobile.com/PLTV/88888890/224/3221226395/index.m3u8
|
||||
CCTV5+ 体育赛事,http://dbiptv.sn.chinamobile.com/PLTV/88888890/224/3221226221/index.m3u8
|
||||
CCTV6 电影,http://dbiptv.sn.chinamobile.com/PLTV/88888890/224/3221226393/index.m3u8
|
||||
CCTV7 国防军事,http://dbiptv.sn.chinamobile.com/PLTV/88888890/224/3221226192/index.m3u8,https://resources.yangshipin.cn/assets/oms/image/202306/b29af94e295ebdf646cefb68122c429b9cd921f498ca20d2d8070252536f9ff9.png?imageMogr2/format/webp,600004092,2000510003
|
||||
CCTV7 国防军事,http://dbiptv.sn.chinamobile.com/PLTV/88888890/224/3221226192/index.m3u8
|
||||
CCTV8 电视剧,http://dbiptv.sn.chinamobile.com/PLTV/88888890/224/3221226391/index.m3u8
|
||||
CCTV9 记录,http://dbiptv.sn.chinamobile.com/PLTV/88888890/224/3221226197/index.m3u8,https://resources.yangshipin.cn/assets/oms/image/202306/2ed1b4deeca179d5db806bb941790f82eb92a1b7299c1c38fe027f95a5caee5e.png?imageMogr2/format/webp,600004078,2000499403
|
||||
CCTV10 科教,http://dbiptv.sn.chinamobile.com/PLTV/88888890/224/3221226189/index.m3u8,https://resources.yangshipin.cn/assets/oms/image/202306/aa6157ec65188cd41826e5a2f088c3d6d153205f5f6428258d12c59999e221aa.png?imageMogr2/format/webp,600001805,2000203503
|
||||
CCTV11 戏曲,http://dbiptv.sn.chinamobile.com/PLTV/88888890/224/3221226240/index.m3u8,https://resources.yangshipin.cn/assets/oms/image/202306/ed12ed7c7a1034dae4350011fe039284c5d5a836506b28c9e32e3c75299625c0.png?imageMogr2/format/webp,600001806,2000204103
|
||||
CCTV12 社会与法,http://dbiptv.sn.chinamobile.com/PLTV/88888890/224/3221226190/index.m3u8, https://resources.yangshipin.cn/assets/oms/image/202306/484083cffaa40df7e659565e8cb4d1cc740158a185512114167aa21fa0c59240.png?imageMogr2/format/webp,600001807,2000202603
|
||||
CCTV9 记录,http://dbiptv.sn.chinamobile.com/PLTV/88888890/224/3221226197/index.m3u8
|
||||
CCTV10 科教,http://dbiptv.sn.chinamobile.com/PLTV/88888890/224/3221226189/index.m3u8
|
||||
CCTV11 戏曲,http://dbiptv.sn.chinamobile.com/PLTV/88888890/224/3221226240/index.m3u8
|
||||
CCTV12 社会与法,http://dbiptv.sn.chinamobile.com/PLTV/88888890/224/3221226190/index.m3u8
|
||||
CCTV13 新闻,https://live-play.cctvnews.cctv.com/cctv/merge_cctv13.m3u8;http://dbiptv.sn.chinamobile.com/PLTV/88888890/224/3221226233/index.m3u8
|
||||
CCTV14 少儿,http://dbiptv.sn.chinamobile.com/PLTV/88888890/224/3221226193/index.m3u8,https://resources.yangshipin.cn/assets/oms/image/202306/af6b603896938dc346fbb16abfc63c12cba54b0ec9d18770a15d347d115f12d5.png?imageMogr2/format/webp,600001809,2000204403
|
||||
CCTV15 音乐,http://dbiptv.sn.chinamobile.com/PLTV/88888890/224/3221225785/index.m3u8,https://resources.yangshipin.cn/assets/oms/image/202306/2ceee92188ef684efe0d8b90839c4f3ad450d179dc64d59beff417059453af47.png?imageMogr2/format/webp,600001815,2000205003
|
||||
CCTV16 奥林匹克,http://39.134.24.162/dbiptv.sn.chinamobile.com/PLTV/88888890/224/3221226921/index.m3u8;http://dbiptv.sn.chinamobile.com/PLTV/88888890/224/3221226921/index.m3u8,https://resources.yangshipin.cn/assets/oms/image/202306/53793fa7bacd3a93ff6dc5d2758418985e1f952a316c335d663b572d8bdcd74d.png?imageMogr2/format/webp,600098637,2012375003
|
||||
CCTV17 农业农村,http://dbiptv.sn.chinamobile.com/PLTV/88888890/224/3221226198/index.m3u8,https://resources.yangshipin.cn/assets/oms/image/202306/ddef563072f8bad2bea5b9e52674cb7b4ed50efb20c26e61994dfbdf05c1e3c0.png?imageMogr2/format/webp,600001810,2000204203
|
||||
CGTN,http://live.cgtn.com/1000/prog_index.m3u8,https://resources.yangshipin.cn/assets/oms/image/202306/a72dff758ca1c17cd0ecc8cedc11b893d208f409d5e6302faa0e9d298848abc3.png?imageMogr2/format/webp,600014550,2001656803
|
||||
CGTN 法语频道,https://livefr.cgtn.com/1000f/prog_index.m3u8,https://resources.yangshipin.cn/assets/oms/image/202306/a8d0046a47433d952bf6ed17062deb8bd2184ba9aec0f7781df6bf9487a3ffcf.png?imageMogr2/format/webp,600084704,2010153503
|
||||
CGTN 俄语频道,http://liveru.cgtn.com/1000r/prog_index.m3u8,https://resources.yangshipin.cn/assets/oms/image/202306/bf0a820893cbaf20dd0333e27042e1ef9c8806e5b602b6a8c95af399db0bc77a.png?imageMogr2/format/webp,600084758,2010152603
|
||||
CGTN 阿拉伯语频道,http://livear.cgtn.com/1000a/prog_index.m3u8,https://resources.yangshipin.cn/assets/oms/image/202306/2e44e2aa3e7a1cedf07fd0ae59fe69e86a60a2632660a006e3e9e7397b2d107e.png?imageMogr2/format/webp,600084782,2010155203
|
||||
CGTN 西班牙语频道,http://livees.cgtn.com/500e/prog_index.m3u8;http://livees.cgtn.com/1000e/prog_index.m3u8,https://resources.yangshipin.cn/assets/oms/image/202309/7c337e3dbe64402ec7e4678a619a4a6d95144e42f35161181ff78e143b7cf67a.png?imageMogr2/format/webp,600084744,2010152503
|
||||
CGTN 纪录频道,https://livedoc.cgtn.com/500d/prog_index.m3u8,https://resources.yangshipin.cn/assets/oms/image/202309/74d3ac436a7e374879578de1d87a941fbf566d39d5632b027c5097891ed32bd5.png?imageMogr2/format/webp,600084781,2010155403
|
||||
CCTV14 少儿,http://dbiptv.sn.chinamobile.com/PLTV/88888890/224/3221226193/index.m3u8
|
||||
CCTV15 音乐,http://dbiptv.sn.chinamobile.com/PLTV/88888890/224/3221225785/index.m3u8
|
||||
CCTV16 奥林匹克,http://39.134.24.162/dbiptv.sn.chinamobile.com/PLTV/88888890/224/3221226921/index.m3u8;http://dbiptv.sn.chinamobile.com/PLTV/88888890/224/3221226921/index.m3u8
|
||||
CCTV17 农业农村,http://dbiptv.sn.chinamobile.com/PLTV/88888890/224/3221226198/index.m3u8
|
||||
CGTN,http://live.cgtn.com/1000/prog_index.m3u8
|
||||
CGTN 法语频道,https://livefr.cgtn.com/1000f/prog_index.m3u8
|
||||
CGTN 俄语频道,http://liveru.cgtn.com/1000r/prog_index.m3u8
|
||||
CGTN 阿拉伯语频道,http://livear.cgtn.com/1000a/prog_index.m3u8
|
||||
CGTN 西班牙语频道,http://livees.cgtn.com/500e/prog_index.m3u8;http://livees.cgtn.com/1000e/prog_index.m3u8
|
||||
CGTN 纪录频道,https://livedoc.cgtn.com/500d/prog_index.m3u8
|
||||
电视指南,http://dbiptv.sn.chinamobile.com/PLTV/88888893/224/3221226987/index.m3u8
|
||||
风云足球,http://dbiptv.sn.chinamobile.com/PLTV/88888893/224/3221226984/index.m3u8
|
||||
风云剧场,http://dbiptv.sn.chinamobile.com/PLTV/88888893/224/3221226950/index.m3u8
|
||||
@@ -48,113 +234,27 @@ CGTN 纪录频道,https://livedoc.cgtn.com/500d/prog_index.m3u8,https://resource
|
||||
央视文化精品,http://dbiptv.sn.chinamobile.com/PLTV/88888893/224/3221226981/index.m3u8
|
||||
|
||||
地方频道
|
||||
东方卫视,http://dbiptv.sn.chinamobile.com/PLTV/88888890/224/3221226217/index.m3u8,https://resources.yangshipin.cn/assets/oms/image/202306/9bd372ca292a82ce3aa08772b07efc4af1f85c21d1f268ea33440c49e9a0a488.png?imageMogr2/format/webp,600002483,2000292403
|
||||
湖南卫视,http://ottrrs.hl.chinamobile.com/PLTV/88888888/224/3221226307/index.m3u8;http://dbiptv.sn.chinamobile.com/PLTV/88888890/224/3221226211/index.m3u8,https://resources.yangshipin.cn/assets/oms/image/202306/4120e89d3079d08aa17d382f69a2308ec70839b278367763c34a34666c75cb88.png?imageMogr2/format/webp,600002475,2000296203
|
||||
湖北卫视,http://ottrrs.hl.chinamobile.com/PLTV/88888888/224/3221226477/index.m3u8;http://dbiptv.sn.chinamobile.com/PLTV/88888890/224/3221226194/index.m3u8,https://resources.yangshipin.cn/assets/oms/image/202306/7a6be5a2bb1dc53a945c016ff1f525dc4a84c51db371c15c89aa55404b0ba784.png?imageMogr2/format/webp,600002508,2000294503
|
||||
辽宁卫视,http://ottrrs.hl.chinamobile.com/PLTV/88888888/224/3221226546/index.m3u8;http://dbiptv.sn.chinamobile.com/PLTV/88888890/224/3221226201/index.m3u8,https://resources.yangshipin.cn/assets/oms/image/202306/ac4ed6058a87c101ae7147ebc38905d0cae047fb73fd277ee5049b84f52bda36.png?imageMogr2/format/webp,600002505,2000281303
|
||||
江苏卫视,http://39.134.24.166/dbiptv.sn.chinamobile.com/PLTV/88888890/224/3221226200/index.m3u8;http://dbiptv.sn.chinamobile.com/PLTV/88888890/224/3221226200/index.m3u8,https://resources.yangshipin.cn/assets/oms/image/202306/380ad685c0c1d5b2c902246b8d2df6d3f9b45e2837abcfe493075bbded597a31.png?imageMogr2/format/webp,600002521,2000295603
|
||||
江西卫视,http://ottrrs.hl.chinamobile.com/PLTV/88888888/224/3221226344/index.m3u8;http://dbiptv.sn.chinamobile.com/PLTV/88888890/224/3221225764/index.m3u8,https://resources.yangshipin.cn/assets/oms/image/202306/3c760d0d00463855890e8a1864ea4a6b6dd66b90c29b4ac714a4b17c16519871.png?imageMogr2/format/webp,600002503,2000294103
|
||||
山东卫视,http://dbiptv.sn.chinamobile.com/PLTV/88888890/224/3221226209/index.m3u8,https://resources.yangshipin.cn/assets/oms/image/202306/22d403f07a7cf5410b3ad3ddb65a11aa229a32475fac213f5344c9f0ec330ca1.png?imageMogr2/format/webp,600002513,2000294803
|
||||
广东卫视,http://dbiptv.sn.chinamobile.com/PLTV/88888890/224/3221226216/index.m3u8,https://resources.yangshipin.cn/assets/oms/image/202306/28886880a4dc0f06fb7e0a528a1def0591d61a65870e29176ede0cc92033bbfd.png?imageMogr2/format/webp,600002485,2000292703
|
||||
广西卫视,http://live.gxrb.com.cn/tv/gxtvlive03/index.m3u8;http://dbiptv.sn.chinamobile.com/PLTV/88888890/224/3221225770/index.m3u8,https://resources.yangshipin.cn/assets/oms/image/202306/54b7e97cb816bb223fe05f3fc44da2c7820eb66e8550c19d23100f2c414ecc38.png?imageMogr2/format/webp,600002509,2000294203
|
||||
重庆卫视,http://ottrrs.hl.chinamobile.com/PLTV/88888888/224/3221226409/index.m3u8;http://dbiptv.sn.chinamobile.com/PLTV/88888890/224/3221226202/index.m3u8,https://resources.yangshipin.cn/assets/oms/image/202306/657651f411de2673d1770d9a78b44c1265704f7468cc41d4be7f51d630768494.png?imageMogr2/format/webp,600002531,2000297803
|
||||
河南卫视,http://ottrrs.hl.chinamobile.com/PLTV/88888888/224/3221226480/index.m3u8;http://dbiptv.sn.chinamobile.com/PLTV/88888890/224/3221225767/index.m3u8,https://resources.yangshipin.cn/assets/oms/image/202306/74925962148a6d31c85808b6cd4e444c2a54bab393d2c5fc85e960b50e22fa86.png?imageMogr2/format/webp,600002525,2000296103
|
||||
河北卫视,http://ottrrs.hl.chinamobile.com/PLTV/88888888/224/3221226406/index.m3u8;http://dbiptv.sn.chinamobile.com/PLTV/88888890/224/3221225750/index.m3u8,https://resources.yangshipin.cn/assets/oms/image/202306/d545becdc81c60197b08c7f47380705e4665ed3fe55efc8b855e486f6e655378.png?imageMogr2/format/webp,600002493,2000293403
|
||||
贵州卫视,http://ottrrs.hl.chinamobile.com/PLTV/88888888/224/3221226474/index.m3u8;http://dbiptv.sn.chinamobile.com/PLTV/88888890/224/3221225793/index.m3u8,https://resources.yangshipin.cn/assets/oms/image/202306/4eb45f4781d33d872af027dc01c941559aab55667dd99cc5c22bef7037807b13.png?imageMogr2/format/webp,600002490,2000293303
|
||||
北京卫视,http://ottrrs.hl.chinamobile.com/PLTV/88888888/224/3221225728/index.m3u8;http://dbiptv.sn.chinamobile.com/PLTV/88888890/224/3221226222/index.m3u8,https://resources.yangshipin.cn/assets/oms/image/202306/f4f23633c578beea49a3841d88d3490100f029ee349059fa532869db889872c5.png?imageMogr2/format/webp,600002309,2000272103
|
||||
黑龙江卫视,http://ottrrs.hl.chinamobile.com/PLTV/88888888/224/3221226327/index.m3u8;http://dbiptv.sn.chinamobile.com/PLTV/88888890/224/3221226215/index.m3u8,https://resources.yangshipin.cn/assets/oms/image/202306/d8273ae9be698ce2db21f5b886ecac95a73429593f93713c60ed8c12c38bf0d3.png?imageMogr2/format/webp,600002498,2000293903
|
||||
浙江卫视,http://hw-m-l.cztv.com/channels/lantian/channel01/1080p.m3u8;http://dbiptv.sn.chinamobile.com/PLTV/88888890/224/3221226199/index.m3u8,https://resources.yangshipin.cn/assets/oms/image/202306/a66c836bd98ba3e41a2e9a570d4b9c50dedc6839e9de333e2e78212ad505f37e.png?imageMogr2/format/webp,600002520,2000295503
|
||||
安徽卫视,http://ottrrs.hl.chinamobile.com/PLTV/88888888/224/3221226391/index.m3u8;http://dbiptv.sn.chinamobile.com/PLTV/88888890/224/3221226203/index.m3u8,https://resources.yangshipin.cn/assets/oms/image/202306/f35fa04b51b1ee4984b03578b65403570868ebca03c6c01e11b097f999a58d9b.png?imageMogr2/format/webp,600002532,2000298003
|
||||
深圳卫视,http://39.134.24.166/dbiptv.sn.chinamobile.com/PLTV/88888890/224/3221226205/index.m3u8;http://dbiptv.sn.chinamobile.com/PLTV/88888890/224/3221226205/index.m3u8,https://resources.yangshipin.cn/assets/oms/image/202306/d59fec04c902e3581c617136d02d4b9b8c4cbe64272781ddd3525e80c823edb7.png?imageMogr2/format/webp,600002481,2000292203
|
||||
四川卫视,http://39.134.24.166/dbiptv.sn.chinamobile.com/PLTV/88888890/224/3221225768/index.m3u8;http://dbiptv.sn.chinamobile.com/PLTV/88888890/224/3221225768/index.m3u8,https://resources.yangshipin.cn/assets/oms/image/202306/3276a414ae0eaa0f116f2045cd913367967d0c7c1e978e8621ac3879436c6ed7.png?imageMogr2/format/webp,600002516,2000295003
|
||||
东南卫视,http://ottrrs.hl.chinamobile.com/PLTV/88888888/224/3221226341/index.m3u8;http://dbiptv.sn.chinamobile.com/PLTV/88888890/224/3221225766/index.m3u8,https://resources.yangshipin.cn/assets/oms/image/202306/3208fe6564a293c21b711333fb3edb05bb5b406cff840573c9a8d839680a1579.png?imageMogr2/format/webp,600002484,2000292503
|
||||
海南卫视,http://ottrrs.hl.chinamobile.com/PLTV/88888888/224/3221226465/index.m3u8;http://dbiptv.sn.chinamobile.com/PLTV/88888890/224/3221225769/index.m3u8,https://resources.yangshipin.cn/assets/oms/image/202306/6e060391fde0469801fc3d84dbf204b4f8d650d251f17d7595a6964c0bb99e81.png?imageMogr2/format/webp,600002506,2000291503
|
||||
|
||||
移动专区
|
||||
|
||||
三沙卫视,https://pullsstv90080111.ssws.tv/live/SSTV20220729.m3u8
|
||||
|
||||
天津卫视,http://ottrrs.hl.chinamobile.com/PLTV/88888888/224/3221225740/index.m3u8;http://dbiptv.sn.chinamobile.com/PLTV/88888890/224/3221226204/index.m3u8
|
||||
吉林卫视,http://ottrrs.hl.chinamobile.com/PLTV/88888888/224/3221226397/index.m3u8;http://dbiptv.sn.chinamobile.com/PLTV/88888890/224/3221225792/index.m3u8
|
||||
云南卫视,http://ottrrs.hl.chinamobile.com/PLTV/88888888/224/3221226444/index.m3u8;http://dbiptv.sn.chinamobile.com/PLTV/88888890/224/3221225751/index.m3u8
|
||||
内蒙古卫视,http://ottrrs.hl.chinamobile.com/PLTV/88888888/224/3221226389/index.m3u8;http://dbiptv.sn.chinamobile.com/PLTV/88888890/224/3221225786/index.m3u8
|
||||
新疆卫视,http://ottrrs.hl.chinamobile.com/PLTV/88888888/224/3221226460/index.m3u8;http://dbiptv.sn.chinamobile.com/PLTV/88888890/224/3221225747/index.m3u8
|
||||
甘肃卫视,http://ottrrs.hl.chinamobile.com/PLTV/88888888/224/3221225633/index.m3u8;http://dbiptv.sn.chinamobile.com/PLTV/88888890/224/3221225754/index.m3u8
|
||||
青海卫视,http://stream.qhbtv.com/qhws/sd/live.m3u8
|
||||
陕西卫视,http://ottrrs.hl.chinamobile.com/PLTV/88888888/224/3221226457/index.m3u8;http://dbiptv.sn.chinamobile.com/PLTV/88888890/224/3221225821/index.m3u8
|
||||
西藏卫视,http://39.134.24.161/dbiptv.sn.chinamobile.com/PLTV/88888890/224/3221226212/index.m3u8;http://dbiptv.sn.chinamobile.com/PLTV/88888890/224/3221226212/index.m3u8
|
||||
山西卫视,http://39.134.24.161/dbiptv.sn.chinamobile.com/PLTV/88888890/224/3221225763/index.m3u8;http://dbiptv.sn.chinamobile.com/PLTV/88888890/224/3221225763/index.m3u8
|
||||
宁夏卫视,http://dbiptv.sn.chinamobile.com/PLTV/88888890/224/3221225748/index.m3u8
|
||||
安多卫视,http://stream.qhbtv.com/adws/sd/live.m3u8;http://dbiptv.sn.chinamobile.com/PLTV/88888890/224/3221226228/index.m3u8
|
||||
三沙卫视,https://pullsstv90080111.ssws.tv/live/SSTV20220729.m3u8
|
||||
延边卫视,http://live.ybtvyun.com/video/s10006-44f040627ca1/index.m3u8;http://dbiptv.sn.chinamobile.com/PLTV/88888890/224/3221226220/index.m3u8
|
||||
浙江少儿,http://hw-m-l.cztv.com/channels/lantian/channel008/1080p.m3u8
|
||||
|
||||
|
||||
|
||||
CETV1,http://dbiptv.sn.chinamobile.com/PLTV/88888890/224/3221225753/index.m3u8
|
||||
CETV2,http://dbiptv.sn.chinamobile.com/PLTV/88888890/224/3221225756/index.m3u8
|
||||
CETV3,http://dbiptv.sn.chinamobile.com/PLTV/88888890/224/3221226226/index.m3u8
|
||||
CETV4,http://dbiptv.sn.chinamobile.com/PLTV/88888890/224/3221226225/index.m3u8
|
||||
山东教育,http://dbiptv.sn.chinamobile.com/PLTV/88888890/224/3221226238/index.m3u8
|
||||
厦门卫视,http://dbiptv.sn.chinamobile.com/PLTV/88888890/224/3221226219/index.m3u8
|
||||
金鹰卡通,http://dbiptv.sn.chinamobile.com/PLTV/88888890/224/3221225744/index.m3u8
|
||||
哈哈炫动,http://dbiptv.sn.chinamobile.com/PLTV/88888890/224/3221226213/index.m3u8
|
||||
优漫卡通,http://dbiptv.sn.chinamobile.com/PLTV/88888890/224/3221225795/index.m3u8
|
||||
大湾区卫视,http://dbiptv.sn.chinamobile.com/PLTV/88888890/224/3221226218/index.m3u8
|
||||
北京卡酷,http://dbiptv.sn.chinamobile.com/PLTV/88888890/224/3221225743/index.m3u8
|
||||
冬奥纪实,http://dbiptv.sn.chinamobile.com/PLTV/88888890/224/3221226232/index.m3u8
|
||||
嘉佳卡通,http://dbiptv.sn.chinamobile.com/PLTV/88888890/224/3221226227/index.m3u8
|
||||
康巴卫视,http://dbiptv.sn.chinamobile.com/PLTV/88888890/224/3221226234/index.m3u8
|
||||
兵团卫视,http://dbiptv.sn.chinamobile.com/PLTV/88888890/224/3221226214/index.m3u8
|
||||
哒啵电竞,http://dbiptv.sn.chinamobile.com/PLTV/88888893/224/3221226951/index.m3u8
|
||||
哒啵赛事,http://dbiptv.sn.chinamobile.com/PLTV/88888893/224/3221226954/index.m3u8
|
||||
CHC高清电影,http://dbiptv.sn.chinamobile.com/PLTV/88888890/224/3221226463/index.m3u8
|
||||
CHC家庭影院,http://dbiptv.sn.chinamobile.com/PLTV/88888890/224/3221226462/index.m3u8
|
||||
CHC动作电影,http://dbiptv.sn.chinamobile.com/PLTV/88888890/224/3221226465/index.m3u8
|
||||
农林卫视,http://dbiptv.sn.chinamobile.com/PLTV/88888890/224/3221226229/index.m3u8
|
||||
陕西一套,http://dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221226357/1.m3u8
|
||||
陕西二套,http://dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221226358/1.m3u8
|
||||
陕西三套,http://dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221226359/1.m3u8
|
||||
陕西四套,http://dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221226360/1.m3u8
|
||||
陕西五套,http://dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221226361/1.m3u8
|
||||
陕西六套,http://dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221226362/1.m3u8
|
||||
陕西七套,http://dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221226363/1.m3u8
|
||||
陕西八套,http://dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221226364/1.m3u8
|
||||
西安新闻综合,http://dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221226366/1.m3u8
|
||||
西安都市,http://dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221226367/1.m3u8
|
||||
西安商务资讯,http://dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221226368/1.m3u8
|
||||
西安影视,http://dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221226369/1.m3u8
|
||||
西安丝路,http://dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221226370/1.m3u8
|
||||
西安教育,http://dbiptv.sn.chinamobile.com/PLTV/88888890/224/3221226371/index.m3u8
|
||||
咸阳-1,http://dbiptv.sn.chinamobile.com/PLTV/88888890/224/3221226372/index.m3u8
|
||||
杨凌-1,http://dbiptv.sn.chinamobile.com/PLTV/88888890/224/3221226373/index.m3u8
|
||||
延安-1,http://dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221226374/1.m3u8
|
||||
延安-2,http://dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221226375/1.m3u8
|
||||
铜川-1,http://dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221226379/1.m3u8
|
||||
铜川-2,http://dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221226380/1.m3u8
|
||||
宝鸡-1,http://dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221226383/1.m3u8
|
||||
宝鸡-2,http://dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221226384/1.m3u8
|
||||
宁强-1,http://dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221226390/1.m3u8
|
||||
宁强-2,http://dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221226389/1.m3u8
|
||||
汉中-1,http://dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221226331/1.m3u8
|
||||
汉中-3,http://dbiptv.sn.chinamobile.com/PLTV/88888890/224/3221225991/index.m3u8
|
||||
佛坪-1,http://dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221226454/1.m3u8
|
||||
镇巴-1,http://dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221226457/1.m3u8
|
||||
略阳-1,http://dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221226322/1.m3u8
|
||||
西乡-1,http://dbiptv.sn.chinamobile.com/PLTV/88888890/224/3221226556/index.m3u8
|
||||
榆林-1,http://dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221226377/1.m3u8
|
||||
商洛-1,http://dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221226378/1.m3u8
|
||||
渭南-1,http://dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221226376/1.m3u8
|
||||
安康-1,http://dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221226385/1.m3u8
|
||||
纪实人文,http://dbiptv.sn.chinamobile.com/PLTV/88888890/224/3221226230/index.m3u8
|
||||
置业频道,http://dbiptv.sn.chinamobile.com/PLTV/88888890/224/3221226241/index.m3u8
|
||||
京视剧场,http://dbiptv.sn.chinamobile.com/PLTV/88888890/224/3221226242/index.m3u8
|
||||
家庭理财,http://dbiptv.sn.chinamobile.com/PLTV/88888890/224/3221226244/index.m3u8
|
||||
奕坦春秋,http://dbiptv.sn.chinamobile.com/PLTV/88888890/224/3221226245/index.m3u8
|
||||
发现之旅,http://dbiptv.sn.chinamobile.com/PLTV/88888890/224/3221226235/index.m3u8
|
||||
老故事,http://dbiptv.sn.chinamobile.com/PLTV/88888890/224/3221226236/index.m3u8
|
||||
书画频道,http://211.103.180.178:8234/live_hls/hdmi.m3u8
|
||||
东方卫视,http://dbiptv.sn.chinamobile.com/PLTV/88888890/224/3221226217/index.m3u8
|
||||
湖南卫视,http://ottrrs.hl.chinamobile.com/PLTV/88888888/224/3221226307/index.m3u8;http://dbiptv.sn.chinamobile.com/PLTV/88888890/224/3221226211/index.m3u8
|
||||
湖北卫视,http://ottrrs.hl.chinamobile.com/PLTV/88888888/224/3221226477/index.m3u8;http://dbiptv.sn.chinamobile.com/PLTV/88888890/224/3221226194/index.m3u8
|
||||
辽宁卫视,http://ottrrs.hl.chinamobile.com/PLTV/88888888/224/3221226546/index.m3u8;http://dbiptv.sn.chinamobile.com/PLTV/88888890/224/3221226201/index.m3u8
|
||||
江苏卫视,http://39.134.24.166/dbiptv.sn.chinamobile.com/PLTV/88888890/224/3221226200/index.m3u8;http://dbiptv.sn.chinamobile.com/PLTV/88888890/224/3221226200/index.m3u8
|
||||
江西卫视,http://ottrrs.hl.chinamobile.com/PLTV/88888888/224/3221226344/index.m3u8;http://dbiptv.sn.chinamobile.com/PLTV/88888890/224/3221225764/index.m3u8
|
||||
山东卫视,http://dbiptv.sn.chinamobile.com/PLTV/88888890/224/3221226209/index.m3u8
|
||||
广东卫视,http://dbiptv.sn.chinamobile.com/PLTV/88888890/224/3221226216/index.m3u8
|
||||
广西卫视,http://live.gxrb.com.cn/tv/gxtvlive03/index.m3u8;http://dbiptv.sn.chinamobile.com/PLTV/88888890/224/3221225770/index.m3u8
|
||||
重庆卫视,http://ottrrs.hl.chinamobile.com/PLTV/88888888/224/3221226409/index.m3u8;http://dbiptv.sn.chinamobile.com/PLTV/88888890/224/3221226202/index.m3u8
|
||||
河南卫视,http://ottrrs.hl.chinamobile.com/PLTV/88888888/224/3221226480/index.m3u8;http://dbiptv.sn.chinamobile.com/PLTV/88888890/224/3221225767/index.m3u8
|
||||
河北卫视,http://ottrrs.hl.chinamobile.com/PLTV/88888888/224/3221226406/index.m3u8;http://dbiptv.sn.chinamobile.com/PLTV/88888890/224/3221225750/index.m3u8
|
||||
贵州卫视,http://ottrrs.hl.chinamobile.com/PLTV/88888888/224/3221226474/index.m3u8;http://dbiptv.sn.chinamobile.com/PLTV/88888890/224/3221225793/index.m3u8
|
||||
北京卫视,http://ottrrs.hl.chinamobile.com/PLTV/88888888/224/3221225728/index.m3u8;http://dbiptv.sn.chinamobile.com/PLTV/88888890/224/3221226222/index.m3u8
|
||||
黑龙江卫视,http://ottrrs.hl.chinamobile.com/PLTV/88888888/224/3221226327/index.m3u8;http://dbiptv.sn.chinamobile.com/PLTV/88888890/224/3221226215/index.m3u8
|
||||
浙江卫视,http://hw-m-l.cztv.com/channels/lantian/channel01/1080p.m3u8;http://dbiptv.sn.chinamobile.com/PLTV/88888890/224/3221226199/index.m3u8
|
||||
安徽卫视,http://ottrrs.hl.chinamobile.com/PLTV/88888888/224/3221226391/index.m3u8;http://dbiptv.sn.chinamobile.com/PLTV/88888890/224/3221226203/index.m3u8
|
||||
深圳卫视,http://39.134.24.166/dbiptv.sn.chinamobile.com/PLTV/88888890/224/3221226205/index.m3u8;http://dbiptv.sn.chinamobile.com/PLTV/88888890/224/3221226205/index.m3u8
|
||||
四川卫视,http://dbiptv.sn.chinamobile.com/PLTV/88888890/224/3221225768/index.m3u8;http://39.134.24.166/dbiptv.sn.chinamobile.com/PLTV/88888890/224/3221225768/index.m3u8
|
||||
东南卫视,http://ottrrs.hl.chinamobile.com/PLTV/88888888/224/3221226341/index.m3u8;http://dbiptv.sn.chinamobile.com/PLTV/88888890/224/3221225766/index.m3u8
|
||||
海南卫视,http://ottrrs.hl.chinamobile.com/PLTV/88888888/224/3221226465/index.m3u8;http://dbiptv.sn.chinamobile.com/PLTV/88888890/224/3221225769/index.m3u8
|
||||
""".trimIndent()
|
||||
|
||||
val map: MutableMap<String, MutableList<TV>> = mutableMapOf()
|
||||
@@ -180,14 +280,19 @@ CHC动作电影,http://dbiptv.sn.chinamobile.com/PLTV/88888890/224/3221226465/in
|
||||
p[1].split(";").map { it.trim() }
|
||||
)
|
||||
|
||||
if (p.size > 2) {
|
||||
tv.logo = p[2]
|
||||
val logo = mappingLogo[tv.title]
|
||||
if (logo != null && logo != "") {
|
||||
tv.logo = logo
|
||||
}
|
||||
if (p.size > 3) {
|
||||
tv.pid = p[3]
|
||||
val programId = mappingEPG[tv.title]
|
||||
if (programId != null && programId != "") {
|
||||
tv.programId = programId
|
||||
}
|
||||
if (p.size > 4) {
|
||||
tv.sid = p[4]
|
||||
|
||||
val video = mappingVideo[tv.title]
|
||||
if (video != null) {
|
||||
tv.pid = video[0]
|
||||
tv.sid = video[1]
|
||||
}
|
||||
|
||||
titleMap.add(tv)
|
||||
|
||||
@@ -9,7 +9,7 @@ object Utils {
|
||||
return SimpleDateFormat(format, Locale.CHINA).format(Date())
|
||||
}
|
||||
|
||||
fun getDateTimestamp(): Int {
|
||||
return (Date().time / 1000).toInt()
|
||||
fun getDateTimestamp(): Long {
|
||||
return Date().time / 1000
|
||||
}
|
||||
}
|
||||
@@ -2,11 +2,10 @@ package com.lizongying.mytv.api
|
||||
|
||||
import android.content.Context
|
||||
import android.content.SharedPreferences
|
||||
import android.util.Log
|
||||
import com.lizongying.mytv.Encryptor
|
||||
import com.lizongying.mytv.MainActivity
|
||||
import com.lizongying.mytv.Utils.getDateTimestamp
|
||||
import com.lizongying.mytv.models.TVViewModel
|
||||
import java.util.Date
|
||||
import kotlin.math.floor
|
||||
import kotlin.random.Random
|
||||
|
||||
@@ -81,10 +80,11 @@ class YSP(var context: Context) {
|
||||
encryptor!!.encrypt(cnlid, timeStr, appVer, guid, platform)
|
||||
signature = getSignature()
|
||||
return """{"cnlid":"$cnlid","livepid":"$livepid","stream":"$stream","guid":"$guid","cKey":"$cKey","adjust":$adjust,"sphttps":"$sphttps","platform":"$platform","cmd":"$cmd","encryptVer":"$encryptVer","dtype":"$dtype","devid":"$devid","otype":"$otype","appVer":"$appVer","app_version":"$appVersion","rand_str":"$randStr","channel":"$channel","defn":"$defn","signature":"$signature"}"""
|
||||
// return """{"cnlid":"2000203803","livepid":"600001801","stream":"2","guid":"lq1y36mb_ccfwmja9zan","cKey":"--01A9F5E89BB86A0C61F4025BEDE15309B6913A79FD1AF1EE7F5EC9C7605F377D1D2281488385C32DEB9E7D0DD3559CB700BD7AF44DD5C9DE0AE14D94B8214027B5D664C108AEE23532348DCC61B86F7C8FBB6CF14D588E6093A25E97DF6D66F4882AB28F17016472DD43D45EF076B7F505176A5E8DEDF2662E5F9AB12B69CB20BCE1579BE724091F3AF6826AE34B713906F3FE139C3783F80EECBD08416DC525E1","adjust":1,"sphttps":"1","platform":"5910204","cmd":"2","encryptVer":"8.1","dtype":"1","devid":"devid","otype":"ojson","appVer":"V1.0.0","app_version":"V1.0.0","rand_str":"IOS2soOw44","channel":"ysp_tx","defn":"fhd","signature":"6ca945f651817de8c6e6910457ceafd6"}"""
|
||||
}
|
||||
|
||||
private fun getTimeStr(): String {
|
||||
return (Date().time / 1000).toString()
|
||||
return getDateTimestamp().toString()
|
||||
}
|
||||
|
||||
fun generateGuid(): String {
|
||||
|
||||
@@ -18,4 +18,15 @@ interface YSPApiService {
|
||||
fun getLiveInfo(
|
||||
@Body request: LiveInfoRequest,
|
||||
): Call<LiveInfo>
|
||||
|
||||
@POST("v1/player/get_live_info")
|
||||
@Headers(
|
||||
"content-type: application/json;charset=UTF-8",
|
||||
"referer: https://www.yangshipin.cn/",
|
||||
"yspappid: 519748109",
|
||||
"cookie: guid=1; vplatform=109; yspopenid=vu0-8lgGV2LW9QjDeuBFsX8yMnzs37Q3_HZF6XyVDpGR_I; vusession=mTIVXnDeVUg0FcP6Xo4kaXd9fxlc70a558kySW4phQU"
|
||||
)
|
||||
fun getLiveInfo2(
|
||||
@Body request: LiveInfoRequest,
|
||||
): Call<LiveInfo>
|
||||
}
|
||||
@@ -9,8 +9,6 @@ class TVListViewModel : ViewModel() {
|
||||
|
||||
var maxNum = mutableListOf<Int>()
|
||||
|
||||
private var sharedPref: SharedPreferences? = null
|
||||
|
||||
private val tvListViewModel = MutableLiveData<MutableList<TVViewModel>>()
|
||||
|
||||
private val _itemPosition = MutableLiveData<Int>()
|
||||
@@ -48,13 +46,6 @@ class TVListViewModel : ViewModel() {
|
||||
_itemPositionCurrent.value = position
|
||||
}
|
||||
|
||||
fun savePosition(position: Int) {
|
||||
with(sharedPref!!.edit()) {
|
||||
putInt("position", position)
|
||||
apply()
|
||||
}
|
||||
}
|
||||
|
||||
fun size(): Int {
|
||||
return tvListViewModel.value!!.size
|
||||
}
|
||||
|
||||
@@ -13,226 +13,13 @@ import androidx.media3.exoplayer.hls.HlsMediaSource
|
||||
import com.lizongying.mytv.TV
|
||||
import com.lizongying.mytv.Utils.getDateTimestamp
|
||||
import com.lizongying.mytv.proto.Ysp.cn.yangshipin.omstv.common.proto.programModel.Program
|
||||
import java.util.Date
|
||||
|
||||
class TVViewModel(private var tv: TV) : ViewModel() {
|
||||
private var mapping = mapOf(
|
||||
"CCTV4K" to "CCTV4K 超高清",
|
||||
"CCTV1" to "CCTV1 综合",
|
||||
"CCTV2" to "CCTV2 财经",
|
||||
"CCTV4" to "CCTV4 中文国际",
|
||||
"CCTV5" to "CCTV5 体育",
|
||||
"CCTV5+" to "CCTV5+ 体育赛事",
|
||||
"CCTV7" to "CCTV7 国防军事",
|
||||
"CCTV9" to "CCTV9 记录",
|
||||
"CCTV10" to "CCTV10 科教",
|
||||
"CCTV11" to "CCTV11 戏曲",
|
||||
"CCTV12" to "CCTV12 社会与法",
|
||||
"CCTV13" to "CCTV13 新闻",
|
||||
"CCTV14" to "CCTV14 少儿",
|
||||
"CCTV15" to "CCTV15 音乐",
|
||||
"CCTV16-HD" to "CCTV16 奥林匹克",
|
||||
"CCTV17" to "CCTV17 农业农村",
|
||||
"CGTN" to "CGTN",
|
||||
"CGTN法语频道" to "CGTN 法语频道",
|
||||
"CGTN俄语频道" to "CGTN 俄语频道",
|
||||
"CGTN阿拉伯语频道" to "CGTN 阿拉伯语频道",
|
||||
"CGTN西班牙语频道" to "CGTN 西班牙语频道",
|
||||
"CGTN外语纪录频道" to "CGTN 纪录频道",
|
||||
|
||||
"东方卫视" to "东方卫视",
|
||||
"湖南卫视" to "湖南卫视",
|
||||
"湖北卫视" to "湖北卫视",
|
||||
"辽宁卫视" to "辽宁卫视",
|
||||
"江苏卫视" to "江苏卫视",
|
||||
"江西卫视" to "江西卫视",
|
||||
"山东卫视" to "山东卫视",
|
||||
"广东卫视" to "广东卫视",
|
||||
"广西卫视" to "广西卫视",
|
||||
"重庆卫视" to "重庆卫视",
|
||||
"河南卫视" to "河南卫视",
|
||||
"河北卫视" to "河北卫视",
|
||||
"贵州卫视" to "贵州卫视",
|
||||
"北京卫视" to "北京卫视",
|
||||
"黑龙江卫视" to "黑龙江卫视",
|
||||
"浙江卫视" to "浙江卫视",
|
||||
"安徽卫视" to "安徽卫视",
|
||||
"深圳卫视" to "深圳卫视",
|
||||
"四川卫视" to "四川卫视",
|
||||
"福建东南卫视" to "东南卫视",
|
||||
"海南卫视" to "海南卫视",
|
||||
).entries.associate { (key, value) -> value to key }
|
||||
|
||||
private var mappingLogo = mapOf(
|
||||
"CCTV4K" to "https://resources.yangshipin.cn/assets/oms/image/202306/3e9d06fd7244d950df5838750f1c6ac3456e172b51caca2c16d2282125b111e8.png?imageMogr2/format/webp",
|
||||
"CCTV4K 超高清" to "https://resources.yangshipin.cn/assets/oms/image/202306/3e9d06fd7244d950df5838750f1c6ac3456e172b51caca2c16d2282125b111e8.png?imageMogr2/format/webp",
|
||||
"CCTV1" to "https://resources.yangshipin.cn/assets/oms/image/202306/d57905b93540bd15f0c48230dbbbff7ee0d645ff539e38866e2d15c8b9f7dfcd.png?imageMogr2/format/webp",
|
||||
"CCTV1 综合" to "https://resources.yangshipin.cn/assets/oms/image/202306/d57905b93540bd15f0c48230dbbbff7ee0d645ff539e38866e2d15c8b9f7dfcd.png?imageMogr2/format/webp",
|
||||
"CCTV2" to "https://resources.yangshipin.cn/assets/oms/image/202306/20115388de0207131af17eac86c33049b95d69eaff064e55653a1b941810a006.png?imageMogr2/format/webp",
|
||||
"CCTV2 财经" to "https://resources.yangshipin.cn/assets/oms/image/202306/20115388de0207131af17eac86c33049b95d69eaff064e55653a1b941810a006.png?imageMogr2/format/webp",
|
||||
"CCTV3" to "https://resources.yangshipin.cn/assets/oms/image/202306/7b7a65c712450da3deb6ca66fbacf4f9aee00d3f20bd80eafb5ada01ec63eb3a.png?imageMogr2/format/webp",
|
||||
"CCTV3 综艺" to "https://resources.yangshipin.cn/assets/oms/image/202306/7b7a65c712450da3deb6ca66fbacf4f9aee00d3f20bd80eafb5ada01ec63eb3a.png?imageMogr2/format/webp",
|
||||
"CCTV4" to "https://resources.yangshipin.cn/assets/oms/image/202306/f357e58fdbcc076a3d65e1f958c942b2e14f14342c60736ceed98b092d35356a.png?imageMogr2/format/webp",
|
||||
"CCTV4 中文国际" to "https://resources.yangshipin.cn/assets/oms/image/202306/f357e58fdbcc076a3d65e1f958c942b2e14f14342c60736ceed98b092d35356a.png?imageMogr2/format/webp",
|
||||
"CCTV5" to "https://resources.yangshipin.cn/assets/oms/image/202306/0a6a7138952675983a3d854df7688557b286d59aa06166edae51506f9204d655.png?imageMogr2/format/webp",
|
||||
"CCTV5 体育" to "https://resources.yangshipin.cn/assets/oms/image/202306/0a6a7138952675983a3d854df7688557b286d59aa06166edae51506f9204d655.png?imageMogr2/format/webp",
|
||||
"CCTV5+" to "https://resources.yangshipin.cn/assets/oms/image/202306/649ad76a90bfef55b05db9fe52e006487280f619089099d5dc971e387fc6eff0.png?imageMogr2/format/webp",
|
||||
"CCTV5+ 体育赛事" to "https://resources.yangshipin.cn/assets/oms/image/202306/649ad76a90bfef55b05db9fe52e006487280f619089099d5dc971e387fc6eff0.png?imageMogr2/format/webp",
|
||||
"CCTV6" to "https://resources.yangshipin.cn/assets/oms/image/202306/741515efda91f03f455df8a7da4ee11fa9329139c276435cf0a9e2af398d5bf2.png?imageMogr2/format/webp",
|
||||
"CCTV6 电影" to "https://resources.yangshipin.cn/assets/oms/image/202306/741515efda91f03f455df8a7da4ee11fa9329139c276435cf0a9e2af398d5bf2.png?imageMogr2/format/webp",
|
||||
"CCTV7" to "https://resources.yangshipin.cn/assets/oms/image/202306/b29af94e295ebdf646cefb68122c429b9cd921f498ca20d2d8070252536f9ff9.png?imageMogr2/format/webp",
|
||||
"CCTV7 国防军事" to "https://resources.yangshipin.cn/assets/oms/image/202306/b29af94e295ebdf646cefb68122c429b9cd921f498ca20d2d8070252536f9ff9.png?imageMogr2/format/webp",
|
||||
"CCTV8" to "https://resources.yangshipin.cn/assets/oms/image/202306/ad51de94426a0ba039e6dd6a8534ea98ecc813a6176bde87b4f18cc34d6d7590.png?imageMogr2/format/webp",
|
||||
"CCTV8 电视剧" to "https://resources.yangshipin.cn/assets/oms/image/202306/ad51de94426a0ba039e6dd6a8534ea98ecc813a6176bde87b4f18cc34d6d7590.png?imageMogr2/format/webp",
|
||||
"CCTV9" to "https://resources.yangshipin.cn/assets/oms/image/202306/2ed1b4deeca179d5db806bb941790f82eb92a1b7299c1c38fe027f95a5caee5e.png?imageMogr2/format/webp",
|
||||
"CCTV9 记录" to "https://resources.yangshipin.cn/assets/oms/image/202306/2ed1b4deeca179d5db806bb941790f82eb92a1b7299c1c38fe027f95a5caee5e.png?imageMogr2/format/webp",
|
||||
"CCTV10" to "https://resources.yangshipin.cn/assets/oms/image/202306/aa6157ec65188cd41826e5a2f088c3d6d153205f5f6428258d12c59999e221aa.png?imageMogr2/format/webp",
|
||||
"CCTV10 科教" to "https://resources.yangshipin.cn/assets/oms/image/202306/aa6157ec65188cd41826e5a2f088c3d6d153205f5f6428258d12c59999e221aa.png?imageMogr2/format/webp",
|
||||
"CCTV11" to "https://resources.yangshipin.cn/assets/oms/image/202306/ed12ed7c7a1034dae4350011fe039284c5d5a836506b28c9e32e3c75299625c0.png?imageMogr2/format/webp",
|
||||
"CCTV11 戏曲" to "https://resources.yangshipin.cn/assets/oms/image/202306/ed12ed7c7a1034dae4350011fe039284c5d5a836506b28c9e32e3c75299625c0.png?imageMogr2/format/webp",
|
||||
"CCTV12" to "https://resources.yangshipin.cn/assets/oms/image/202306/484083cffaa40df7e659565e8cb4d1cc740158a185512114167aa21fa0c59240.png?imageMogr2/format/webp",
|
||||
"CCTV12 社会与法" to "https://resources.yangshipin.cn/assets/oms/image/202306/484083cffaa40df7e659565e8cb4d1cc740158a185512114167aa21fa0c59240.png?imageMogr2/format/webp",
|
||||
"CCTV13" to "https://resources.yangshipin.cn/assets/oms/image/202306/266da7b43c03e2312186b4a999e0f060e8f15b10d2cc2c9aa32171819254cf1a.png?imageMogr2/format/webp",
|
||||
"CCTV13 新闻" to "https://resources.yangshipin.cn/assets/oms/image/202306/266da7b43c03e2312186b4a999e0f060e8f15b10d2cc2c9aa32171819254cf1a.png?imageMogr2/format/webp",
|
||||
"CCTV14" to "https://resources.yangshipin.cn/assets/oms/image/202306/af6b603896938dc346fbb16abfc63c12cba54b0ec9d18770a15d347d115f12d5.png?imageMogr2/format/webp",
|
||||
"CCTV14 少儿" to "https://resources.yangshipin.cn/assets/oms/image/202306/af6b603896938dc346fbb16abfc63c12cba54b0ec9d18770a15d347d115f12d5.png?imageMogr2/format/webp",
|
||||
"CCTV15" to "https://resources.yangshipin.cn/assets/oms/image/202306/2ceee92188ef684efe0d8b90839c4f3ad450d179dc64d59beff417059453af47.png?imageMogr2/format/webp",
|
||||
"CCTV15 音乐" to "https://resources.yangshipin.cn/assets/oms/image/202306/2ceee92188ef684efe0d8b90839c4f3ad450d179dc64d59beff417059453af47.png?imageMogr2/format/webp",
|
||||
"CCTV16" to "https://resources.yangshipin.cn/assets/oms/image/202306/53793fa7bacd3a93ff6dc5d2758418985e1f952a316c335d663b572d8bdcd74d.png?imageMogr2/format/webp",
|
||||
"CCTV16 奥林匹克" to "https://resources.yangshipin.cn/assets/oms/image/202306/53793fa7bacd3a93ff6dc5d2758418985e1f952a316c335d663b572d8bdcd74d.png?imageMogr2/format/webp",
|
||||
"CCTV17" to "https://resources.yangshipin.cn/assets/oms/image/202306/ddef563072f8bad2bea5b9e52674cb7b4ed50efb20c26e61994dfbdf05c1e3c0.png?imageMogr2/format/webp",
|
||||
"CCTV17 农业农村" to "https://resources.yangshipin.cn/assets/oms/image/202306/ddef563072f8bad2bea5b9e52674cb7b4ed50efb20c26e61994dfbdf05c1e3c0.png?imageMogr2/format/webp",
|
||||
"CGTN" to "https://resources.yangshipin.cn/assets/oms/image/202306/a72dff758ca1c17cd0ecc8cedc11b893d208f409d5e6302faa0e9d298848abc3.png?imageMogr2/format/webp",
|
||||
"CGTN 法语频道" to "https://resources.yangshipin.cn/assets/oms/image/202306/a8d0046a47433d952bf6ed17062deb8bd2184ba9aec0f7781df6bf9487a3ffcf.png?imageMogr2/format/webp",
|
||||
"CGTN 俄语频道" to "https://resources.yangshipin.cn/assets/oms/image/202306/bf0a820893cbaf20dd0333e27042e1ef9c8806e5b602b6a8c95af399db0bc77a.png?imageMogr2/format/webp",
|
||||
"CGTN 阿拉伯语频道" to "https://resources.yangshipin.cn/assets/oms/image/202306/2e44e2aa3e7a1cedf07fd0ae59fe69e86a60a2632660a006e3e9e7397b2d107e.png?imageMogr2/format/webp",
|
||||
"CGTN 西班牙语频道" to "https://resources.yangshipin.cn/assets/oms/image/202309/7c337e3dbe64402ec7e4678a619a4a6d95144e42f35161181ff78e143b7cf67a.png?imageMogr2/format/webp",
|
||||
"CGTN 纪录频道" to "https://resources.yangshipin.cn/assets/oms/image/202309/74d3ac436a7e374879578de1d87a941fbf566d39d5632b027c5097891ed32bd5.png?imageMogr2/format/webp",
|
||||
|
||||
"风云剧场" to "https://resources.yangshipin.cn/assets/oms/image/202306/4d549e53e6d0f632d5a633d1945280797b153e588f919221a07faa869812cc89.png?imageMogr2/format/webp",
|
||||
"第一剧场" to "https://resources.yangshipin.cn/assets/oms/image/202306/a556bd7d93ce65e18f243a8892b5604f4faa994a4897315914216a710a706208.png?imageMogr2/format/webp",
|
||||
"怀旧剧场" to "https://resources.yangshipin.cn/assets/oms/image/202306/5661bd04fecdb6e899f801147a22ab5d3a475bf2b62e30aec2c0023190ebc9b1.png?imageMogr2/format/webp",
|
||||
"风云音乐" to "https://resources.yangshipin.cn/assets/oms/image/202306/bbf1d024c5228b8dd128b0e3cb1717d173fab4ee84c3a4c8a57b1a215362ca3b.png?imageMogr2/format/webp",
|
||||
"兵器科技" to "https://resources.yangshipin.cn/assets/oms/image/202306/4c6b6a6d3839889f34d33db3c2f80233b26b74d3489b393487635f8704e70796.png?imageMogr2/format/webp",
|
||||
"风云足球" to "https://resources.yangshipin.cn/assets/oms/image/202306/cd1e2bb52b06a991de168733e5ff0f1d85adc8042d40c8f393f723543e5dd08a.png?imageMogr2/format/webp",
|
||||
"高尔夫网球" to "https://resources.yangshipin.cn/assets/oms/image/202306/cdd1b31ede7a5ad049ed53d9a072422f829e72dd062ed2c19e077fdd01699071.png?imageMogr2/format/webp",
|
||||
"女性时尚" to "https://resources.yangshipin.cn/assets/oms/image/202306/fa28955ce8b2539d728bf4c6a13a46ff57ad76eae46627f7bcfb1ed8a613d3fc.png?imageMogr2/format/webp",
|
||||
"央视文化精品" to "https://resources.yangshipin.cn/assets/oms/image/202306/14ac5ce40482cacd3d4b37435222bfe86af2b452a2f04ecbfc1d13d76edd7c57.png?imageMogr2/format/webp",
|
||||
"央视台球" to "https://resources.yangshipin.cn/assets/oms/image/202306/10e14a92478011aa6c3c8562e62127f3b1908e29fcd78e4b2b24b9e6d3ec2fbc.png?imageMogr2/format/webp",
|
||||
"电视指南" to "https://resources.yangshipin.cn/assets/oms/image/202306/244d72c0eb1615ed7d51c2f5db5a67f306aa3f58c05bc2d34de3aa7e956dc8c9.png?imageMogr2/format/webp",
|
||||
"卫生健康" to "https://resources.yangshipin.cn/assets/oms/image/202306/54a6863656fdfd8f803be193ddf22441c5000a108833889816fd2d8911715ce8.png?imageMogr2/format/webp",
|
||||
|
||||
"东方卫视" to "https://resources.yangshipin.cn/assets/oms/image/202306/9bd372ca292a82ce3aa08772b07efc4af1f85c21d1f268ea33440c49e9a0a488.png?imageMogr2/format/webp",
|
||||
"湖南卫视" to "https://resources.yangshipin.cn/assets/oms/image/202306/4120e89d3079d08aa17d382f69a2308ec70839b278367763c34a34666c75cb88.png?imageMogr2/format/webp",
|
||||
"湖北卫视" to "https://resources.yangshipin.cn/assets/oms/image/202306/7a6be5a2bb1dc53a945c016ff1f525dc4a84c51db371c15c89aa55404b0ba784.png?imageMogr2/format/webp",
|
||||
"辽宁卫视" to "https://resources.yangshipin.cn/assets/oms/image/202306/ac4ed6058a87c101ae7147ebc38905d0cae047fb73fd277ee5049b84f52bda36.png?imageMogr2/format/webp",
|
||||
"江苏卫视" to "https://resources.yangshipin.cn/assets/oms/image/202306/380ad685c0c1d5b2c902246b8d2df6d3f9b45e2837abcfe493075bbded597a31.png?imageMogr2/format/webp",
|
||||
"江西卫视" to "https://resources.yangshipin.cn/assets/oms/image/202306/3c760d0d00463855890e8a1864ea4a6b6dd66b90c29b4ac714a4b17c16519871.png?imageMogr2/format/webp",
|
||||
"山东卫视" to "https://resources.yangshipin.cn/assets/oms/image/202306/22d403f07a7cf5410b3ad3ddb65a11aa229a32475fac213f5344c9f0ec330ca1.png?imageMogr2/format/webp",
|
||||
"广东卫视" to "https://resources.yangshipin.cn/assets/oms/image/202306/28886880a4dc0f06fb7e0a528a1def0591d61a65870e29176ede0cc92033bbfd.png?imageMogr2/format/webp",
|
||||
"广西卫视" to "https://resources.yangshipin.cn/assets/oms/image/202306/54b7e97cb816bb223fe05f3fc44da2c7820eb66e8550c19d23100f2c414ecc38.png?imageMogr2/format/webp",
|
||||
"重庆卫视" to "https://resources.yangshipin.cn/assets/oms/image/202306/657651f411de2673d1770d9a78b44c1265704f7468cc41d4be7f51d630768494.png?imageMogr2/format/webp",
|
||||
"河南卫视" to "https://resources.yangshipin.cn/assets/oms/image/202306/74925962148a6d31c85808b6cd4e444c2a54bab393d2c5fc85e960b50e22fa86.png?imageMogr2/format/webp",
|
||||
"河北卫视" to "https://resources.yangshipin.cn/assets/oms/image/202306/d545becdc81c60197b08c7f47380705e4665ed3fe55efc8b855e486f6e655378.png?imageMogr2/format/webp",
|
||||
"贵州卫视" to "https://resources.yangshipin.cn/assets/oms/image/202306/4eb45f4781d33d872af027dc01c941559aab55667dd99cc5c22bef7037807b13.png?imageMogr2/format/webp",
|
||||
"北京卫视" to "https://resources.yangshipin.cn/assets/oms/image/202306/f4f23633c578beea49a3841d88d3490100f029ee349059fa532869db889872c5.png?imageMogr2/format/webp",
|
||||
"黑龙江卫视" to "https://resources.yangshipin.cn/assets/oms/image/202306/d8273ae9be698ce2db21f5b886ecac95a73429593f93713c60ed8c12c38bf0d3.png?imageMogr2/format/webp",
|
||||
"浙江卫视" to "https://resources.yangshipin.cn/assets/oms/image/202306/a66c836bd98ba3e41a2e9a570d4b9c50dedc6839e9de333e2e78212ad505f37e.png?imageMogr2/format/webp",
|
||||
"安徽卫视" to "https://resources.yangshipin.cn/assets/oms/image/202306/f35fa04b51b1ee4984b03578b65403570868ebca03c6c01e11b097f999a58d9b.png?imageMogr2/format/webp",
|
||||
"深圳卫视" to "https://resources.yangshipin.cn/assets/oms/image/202306/d59fec04c902e3581c617136d02d4b9b8c4cbe64272781ddd3525e80c823edb7.png?imageMogr2/format/webp",
|
||||
"四川卫视" to "https://resources.yangshipin.cn/assets/oms/image/202306/3276a414ae0eaa0f116f2045cd913367967d0c7c1e978e8621ac3879436c6ed7.png?imageMogr2/format/webp",
|
||||
"东南卫视" to "https://resources.yangshipin.cn/assets/oms/image/202306/3208fe6564a293c21b711333fb3edb05bb5b406cff840573c9a8d839680a1579.png?imageMogr2/format/webp",
|
||||
"海南卫视" to "https://resources.yangshipin.cn/assets/oms/image/202306/6e060391fde0469801fc3d84dbf204b4f8d650d251f17d7595a6964c0bb99e81.png?imageMogr2/format/webp",
|
||||
)
|
||||
|
||||
private var mappingEPG = mapOf(
|
||||
"CCTV4K" to "600002264",
|
||||
"CCTV4K 超高清" to "600002264",
|
||||
"CCTV1" to "600001859",
|
||||
"CCTV1 综合" to "600001859",
|
||||
"CCTV2" to "600001800",
|
||||
"CCTV2 财经" to "600001800",
|
||||
"CCTV3" to "600001801",
|
||||
"CCTV3 综艺" to "600001801",
|
||||
"CCTV4" to "600001814",
|
||||
"CCTV4 中文国际" to "600001814",
|
||||
"CCTV5" to "600001818",
|
||||
"CCTV5 体育" to "600001818",
|
||||
"CCTV5+" to "600001817",
|
||||
"CCTV5+ 体育赛事" to "600001817",
|
||||
"CCTV6" to "600001802",
|
||||
"CCTV6 电影" to "600001802",
|
||||
"CCTV7" to "600004092",
|
||||
"CCTV7 国防军事" to "600004092",
|
||||
"CCTV8" to "600001803",
|
||||
"CCTV8 电视剧" to "600001803",
|
||||
"CCTV9" to "600004078",
|
||||
"CCTV9 记录" to "600004078",
|
||||
"CCTV10" to "600001805",
|
||||
"CCTV10 科教" to "600001805",
|
||||
"CCTV11" to "600001806",
|
||||
"CCTV11 戏曲" to "600001806",
|
||||
"CCTV12" to "600001807",
|
||||
"CCTV12 社会与法" to "600001807",
|
||||
"CCTV13" to "600001811",
|
||||
"CCTV13 新闻" to "600001811",
|
||||
"CCTV14" to "600001809",
|
||||
"CCTV14 少儿" to "600001809",
|
||||
"CCTV15" to "600001815",
|
||||
"CCTV15 音乐" to "600001815",
|
||||
"CCTV16" to "600098637",
|
||||
"CCTV16 奥林匹克" to "600098637",
|
||||
"CCTV17" to "600001810",
|
||||
"CCTV17 农业农村" to "600001810",
|
||||
"CGTN" to "600014550",
|
||||
"CGTN 法语频道" to "600084704",
|
||||
"CGTN 俄语频道" to "600084758",
|
||||
"CGTN 阿拉伯语频道" to "600084782",
|
||||
"CGTN 西班牙语频道" to "600084744",
|
||||
"CGTN 记录频道" to "600084781",
|
||||
|
||||
"风云剧场" to "600099658",
|
||||
"第一剧场" to "600099655",
|
||||
"怀旧剧场" to "600099620",
|
||||
"风云音乐" to "600099660",
|
||||
"兵器科技" to "600099649",
|
||||
"风云足球" to "600099636",
|
||||
"高尔夫网球" to "600099659",
|
||||
"女性时尚" to "600099650",
|
||||
"央视文化精品" to "600099653",
|
||||
"央视台球" to "600099652",
|
||||
"电视指南" to "600099656",
|
||||
"卫生健康" to "600099651",
|
||||
|
||||
"东方卫视" to "600002483",
|
||||
"湖南卫视" to "600002475",
|
||||
"湖北卫视" to "600002508",
|
||||
"辽宁卫视" to "600002505",
|
||||
"江苏卫视" to "600002521",
|
||||
"江西卫视" to "600002503",
|
||||
"山东卫视" to "600002513",
|
||||
"广东卫视" to "600002485",
|
||||
"广西卫视" to "600002509",
|
||||
"重庆卫视" to "600002531",
|
||||
"河南卫视" to "600002525",
|
||||
"河北卫视" to "600002493",
|
||||
"贵州卫视" to "600002490",
|
||||
"北京卫视" to "600002309",
|
||||
"黑龙江卫视" to "600002498",
|
||||
"浙江卫视" to "600002520",
|
||||
"安徽卫视" to "600002532",
|
||||
"深圳卫视" to "600002481",
|
||||
"四川卫视" to "600002516",
|
||||
"东南卫视" to "600002484",
|
||||
"海南卫视" to "600002506",
|
||||
)
|
||||
|
||||
private var isFirstTime = true
|
||||
|
||||
private var rowPosition: Int = 0
|
||||
private var itemPosition: Int = 0
|
||||
|
||||
var programUpdateTime: Int = 0
|
||||
var programUpdateTime: Long = 0
|
||||
|
||||
private val _programId = MutableLiveData<String>()
|
||||
val programId: LiveData<String>
|
||||
@@ -327,25 +114,11 @@ class TVViewModel(private var tv: TV) : ViewModel() {
|
||||
_title.value = tv.title
|
||||
_videoUrl.value = tv.videoUrl
|
||||
_videoIndex.value = tv.videoIndex
|
||||
Log.d(TAG, "${tv.title} ${mappingLogo[tv.title]}")
|
||||
if (mappingLogo[tv.title] != null) {
|
||||
_logo.value = mappingLogo[tv.title]
|
||||
}
|
||||
_logo.value = tv.logo
|
||||
_programId.value = tv.programId
|
||||
_pid.value = tv.pid
|
||||
_sid.value = tv.sid
|
||||
_program.value = mutableListOf()
|
||||
|
||||
if (mappingEPG[tv.title] != null) {
|
||||
_programId.value = mappingEPG[tv.title]
|
||||
}
|
||||
}
|
||||
|
||||
fun getIsFirstTime(): Boolean {
|
||||
return isFirstTime
|
||||
}
|
||||
|
||||
fun isFirstTime(firstTime: Boolean) {
|
||||
isFirstTime = firstTime
|
||||
}
|
||||
|
||||
fun getRowPosition(): Int {
|
||||
@@ -372,20 +145,9 @@ class TVViewModel(private var tv: TV) : ViewModel() {
|
||||
return tv
|
||||
}
|
||||
|
||||
fun ysp(): String? {
|
||||
if (tv.pid == "") {
|
||||
return null
|
||||
}
|
||||
return mapping[tv.title]
|
||||
}
|
||||
|
||||
// fun getProgram(): MutableList<Program>? {
|
||||
// _program.value = (_program.value?.filter { it.et > (Date().time / 1000) })?.toMutableList()
|
||||
// return _program.value?.subList(0, 2)
|
||||
// }
|
||||
|
||||
fun getProgramOne(): Program? {
|
||||
val programNew = (_program.value?.filter { it.et > (Date().time / 1000) })?.toMutableList()
|
||||
val programNew =
|
||||
(_program.value?.filter { it.et > getDateTimestamp() })?.toMutableList()
|
||||
if (programNew != null && _program.value != programNew) {
|
||||
_program.value = programNew
|
||||
}
|
||||
|
||||
|
Before Width: | Height: | Size: 1.6 KiB After Width: | Height: | Size: 8.9 KiB |
@@ -32,14 +32,14 @@
|
||||
android:layout_marginTop="0dp"
|
||||
android:gravity="start"
|
||||
android:textColor="#FFEEEEEE"
|
||||
android:textSize="20sp" />
|
||||
android:textSize="22sp" />
|
||||
|
||||
<TextView
|
||||
android:id="@+id/info_desc"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_gravity="start"
|
||||
android:layout_marginTop="10dp"
|
||||
android:layout_marginTop="8dp"
|
||||
android:gravity="start"
|
||||
android:singleLine="true"
|
||||
android:textColor="#B3EEEEEE"
|
||||
|
||||
@@ -0,0 +1,5 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<adaptive-icon xmlns:android="http://schemas.android.com/apk/res/android">
|
||||
<background android:drawable="@color/ic_launcher_background"/>
|
||||
<foreground android:drawable="@mipmap/ic_launcher_foreground"/>
|
||||
</adaptive-icon>
|
||||
@@ -0,0 +1,5 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<adaptive-icon xmlns:android="http://schemas.android.com/apk/res/android">
|
||||
<background android:drawable="@color/ic_launcher_background"/>
|
||||
<foreground android:drawable="@mipmap/ic_launcher_foreground"/>
|
||||
</adaptive-icon>
|
||||
|
Before Width: | Height: | Size: 2.1 KiB After Width: | Height: | Size: 1.4 KiB |
|
After Width: | Height: | Size: 1.7 KiB |
|
After Width: | Height: | Size: 2.8 KiB |
|
Before Width: | Height: | Size: 1.7 KiB After Width: | Height: | Size: 912 B |
|
After Width: | Height: | Size: 1.1 KiB |