-
-
Notifications
You must be signed in to change notification settings - Fork 32
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
v2.0.6 armv7 ja4 error #438
Comments
This architecture problem is incredible. What has changed by printing out the complete response first? |
v2.0.5 builds without errors, v2.0.6 with an error: assert json_data["tls"]["ja4"] == "t13d1516h2_8daaf6152771_b1ff8ab2d16f"
E AssertionError: assert 't13d1516h2_8..._fca9c764716e' == 't13d1516h2_8..._b1ff8ab2d16f'
E
E - t13d1516h2_8daaf6152771_b1ff8ab2d16f
E ? -- ^^ ^^^ ^
E + t13d1516h2_8daaf6152771_fca9c764716e
E ? ^ ^^^^^^ ^ So you need to look here - v2.0.5...v2.0.6 |
Comparing only ja3/ja4 is often meaningless, just like the new version of Firefox browser, maintaining TLS session will change the extension, and then the calculated value of these fingerprint strings will change. So it is useless and can only be used as a reference. Ultimately, you need to compare all the extensions set. I'm talking about this complete response:
|
That's why you need to print the full response to see what has changed. The connection pool only distinguishes between http1 and http2 versions of the connection, and there is no problem with other architectures. This is the incredible problem |
In the past, under the same host, if the connection pool was not closed, if the negotiated request version was HTTP1 when accessing the connection for the first time, then the second request would reuse the HTTP1 connection regardless of the version set. |
I'll make a new workflow for armv7 to get full answers as soon as possible |
Also, have you used The original author is This is also a problem that needs to be eliminated. |
And there is no problem with my binding library. import asyncio
from rnet import Impersonate, Client
async def main():
client = Client(
impersonate=Impersonate.Chrome131,
user_agent="rnet",
)
resp = await client.get("https://tls.peet.ws/api/all")
print("Status Code: ", resp.status_code)
print("Version: ", resp.version)
print("Response URL: ", resp.url)
print("Headers: ", resp.headers.to_dict())
print("Content-Length: ", resp.content_length)
print("Encoding: ", resp.encoding)
print("Remote Address: ", resp.remote_addr)
text = await resp.text()
print(text)
if __name__ == "__main__":
asyncio.run(main()) $ docker run --rm -it --platform linux/arm/v7 arm32v7/python:3.9-alpine /bin/sh [9:38:02]
/ # uname -a
Linux 92b3008a24c6 6.10.12-orbstack-00282-gd1783374c25e #7 SMP Wed Oct 2 10:16:55 UTC 2024 armv7l Linux
/ # apk add vim
fetch https://dl-cdn.alpinelinux.org/alpine/v3.21/main/armv7/APKINDEX.tar.gz
fetch https://dl-cdn.alpinelinux.org/alpine/v3.21/community/armv7/APKINDEX.tar.gz
(1/3) Installing vim-common (9.1.1105-r0)
(2/3) Installing xxd (9.1.1105-r0)
(3/3) Installing vim (9.1.1105-r0)
Executing busybox-1.37.0-r12.trigger
OK: 36 MiB in 41 packages
/ # vim client.py
/ # pip install asyncio rnet
Collecting asyncio
Downloading asyncio-3.4.3-py3-none-any.whl (101 kB)
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 101.8/101.8 kB 3.8 MB/s eta 0:00:00
Collecting rnet
Downloading rnet-0.2.3-cp39-abi3-musllinux_1_2_armv7l.whl (3.0 MB)
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 3.0/3.0 MB 5.8 MB/s eta 0:00:00
Installing collected packages: asyncio, rnet
Successfully installed asyncio-3.4.3 rnet-0.2.3
WARNING: Running pip as the 'root' user can result in broken permissions and conflicting behaviour with the system package manager. It is recommended to use a virtual environment instead: https://pip.pypa.io/warnings/venv
[notice] A new release of pip is available: 23.0.1 -> 25.0.1
[notice] To update, run: pip install --upgrade pip
/ # pip install asyncio rnet
Requirement already satisfied: asyncio in /usr/local/lib/python3.9/site-packages (3.4.3)
Requirement already satisfied: rnet in /usr/local/lib/python3.9/site-packages (0.2.3)
WARNING: Running pip as the 'root' user can result in broken permissions and conflicting behaviour with the system package manager. It is recommended to use a virtual environment instead: https://pip.pypa.io/warnings/venv
[notice] A new release of pip is available: 23.0.1 -> 25.0.1
[notice] To update, run: pip install --upgrade pip
/ # python3 client.py
Status Code: 200
Version: HTTP/2.0
Response URL: https://tls.peet.ws/api/all
Headers: {'server': b'TrackMe.peet.ws', 'content-length': b'9341', 'content-type': b'application/json'}
Content-Length: 9341
Encoding: utf-8
Remote Address: 198.18.2.16:443
{
"donate": "Please consider donating to keep this API running. Visit https://tls.peet.ws",
"ip": "198.18.2.16:443",
"http_version": "h2",
"method": "GET",
"user_agent": "rnet",
"tls": {
"ciphers": [
"TLS_GREASE (0x3A3A)",
"TLS_AES_128_GCM_SHA256",
"TLS_AES_256_GCM_SHA384",
"TLS_CHACHA20_POLY1305_SHA256",
"TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256",
"TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256",
"TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384",
"TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384",
"TLS_ECDHE_ECDSA_WITH_CHACHA20_POLY1305_SHA256",
"TLS_ECDHE_RSA_WITH_CHACHA20_POLY1305_SHA256",
"TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA",
"TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA",
"TLS_RSA_WITH_AES_128_GCM_SHA256",
"TLS_RSA_WITH_AES_256_GCM_SHA384",
"TLS_RSA_WITH_AES_128_CBC_SHA",
"TLS_RSA_WITH_AES_256_CBC_SHA"
],
"extensions": [
{
"name": "TLS_GREASE (0xfafa)"
},
{
"name": "supported_groups (10)",
"supported_groups": [
"TLS_GREASE (0xeaea)",
"X25519MLKEM768 (4588)",
"X25519 (29)",
"P-256 (23)",
"P-384 (24)"
]
},
{
"name": "key_share (51)",
"shared_keys": [
{
"TLS_GREASE (0xeaea)": "00"
},
{
"X25519MLKEM768 (4588)": "c8b5377ef6469e309da114b153e99df5e26a9a21b2e9e8c30c010ee941ae936902c71346e1144cf33105086249c8316809b583d2215a82a72496a0066c771ff626a9c7288a0ee8b9dc954985b9b845b8a4d7a42bd85a22caa567d5530139ba5c29c45cad8232ba8c53cbb654c41c6763bcb3afc5c394106cd536489eb1a48bd4956ff2859b5144d1f33c74701435cb3561a5959edb5e3673b20700b521b2034a89388440280a9c9caf791c52a2046ca84c74a03afbac9c9d3a4092a3b9eb5b39a423240d203d163b7624d858e10a7c093a22f20747b203404e3325fbcc7bdc53366176a2986a6f40fc999a244039e843c9270fedaa8fce228eb2712eb6b857f76cb4b4894062aac72172653a265e0f908f56f55246dc41c751cf19f16314f62973444283b3b159bc9978428ec0859f34d9483b341172e822f959593d095a008bbeff45cbc6f0c0d64b0d88853a514512bdb22a7cc605f8474cd6706252111ba4c05887b50a95130c4b9173b3c0bc5464c14ed605d90091b3a93b79f184858c1fb9fc3756b8768fd479597905c4ea30d589b841a5960fe0c1693a9d9479ba9bb053ffa4583b7b4f79158ef2db05aed54332b8c1ea309668ea171eb740007233c2436ddb421c716112f00a5be888bdcfac2c72a40f2620b151b063d089cc682b07a45a829540693132b311699fb9734b1a638b833837eaa520e065242ceb36e5e980902596b64cc6b820a15d7c5fe3c82f3cfcbe589a5e45db59fe203c5a31bf4e9256bafb720ab5918a903cc45b012094829843cf31daa4c3328858e1cb4b416d5b3c8ca68b6fdcc7108d147f856a6e0f8b1eae25bf93b486a4398d8a41a698a2a64709249ffcbb2a5b709d88723a7380c79177700c960f512aeaf47dbc5c55ef1c8408ab478e3400e6e89b92408614400875d4ab83d717ec073f88f60d1f42ace95bb7792c2b00c74e40f623e5418364f3c1fce662bec9468486bcc1e954e3599181f9b1b9ec7a376c0870c0816c744d502438f8dc83126a9ec3992e24f943b58c3d85a79f10965ec3318bc0946bcc170072b8253c6905735b66b48b58a85598ee62b8f26aaf2dd2272b036c1b801882f88765287db6a826b21a2dcb72ac93720b50239778db930721c806a80277812a5bba5721e66eb3150d86d68bc814198c7c9c878b8017033b080c277bb229f9c40f20744fa4e84ca96b010c808e0eb2aa55965522d2750c57cccc6529e00ac7bdc91697151dfe99622c89014ed12ed0e662be5a76eff1495f955ad677ac9bc188f08a7066bc8c01c0a55c4b979ab70beea9b91d0c1f70470d860c85ed9174b5d9abc191cd9f9993aa4b0027451251c4a44812991599086d8237caab81f674396b77bbf506b4b2a043e1908ac3725981f8a8ba9265761536159a9323b07cc87247ccec9811617e32d9bdf40a19a7273905c8a4ec111ea4c669bc97c84a802491e883fb347772f7337fd3942ca6c98fd22fd9ac80b850a71b1b73e6e586581265031696beb3322eac80d3569396478aeae7003c78c307fa872d1a4ce1109f9316a0b7457de3f1a9f1c64bca58c6b965bc633a533e3b9ca9f20cc34c5213206f912203f3154b0fe133b67b3226b49300c358b7b744e44295108e8507b793fcfac253861c893202dcca81bbcc68124e3f200eabeac906a8e19d0a3ce2ae0478350c5d332c8d14b35327da2ad14625ad2ed639"
},
{
"X25519 (29)": "2239877182f73a15a76dd31b81c7b2f87bc87c09587806ae6dc79be24c80cb75"
}
]
},
{
"name": "ec_point_formats (11)",
"elliptic_curves_point_formats": [
"0x00"
]
},
{
"name": "application_settings_old (17513)",
"protocols": [
"h2"
]
},
{
"name": "signed_certificate_timestamp (18)"
},
{
"name": "extensionEncryptedClientHello (boringssl) (65037)",
"data": "00000100013900202f501baa0a2b874e692209652c77718ae8715046238af5ad6274869e135edb2100d0b1476c119bdc58ed399cdc4a89415f1c9df3df0e9c4a798e71aecacc820fab05f3fbc33c8d6209df47aebdfcb808a211f61aa14911837924e2d2f1cc7a8bca531bc609f6634659dca9652afda449c1c49ee6f89a7ced186ceca022b0ffba106a555b3f616606ebff0d15f22d7e917b871c05f5849eeeeeb08580155b0c82cf1812d2a5f54dd088b56d5fe123579237fc75985347bb0ed6baf771be5aae0750de1272cc30ee1f84901c51f32eb4f4fb6d1441437a2a675ba43d22b446ea4e4ccb20df088b02ba529a9daddfb131ac1200"
},
{
"name": "signature_algorithms (13)",
"signature_algorithms": [
"ecdsa_secp256r1_sha256",
"rsa_pss_rsae_sha256",
"rsa_pkcs1_sha256",
"ecdsa_secp384r1_sha384",
"rsa_pss_rsae_sha384",
"rsa_pkcs1_sha384",
"rsa_pss_rsae_sha512",
"rsa_pkcs1_sha512"
]
},
{
"name": "psk_key_exchange_modes (45)",
"PSK_Key_Exchange_Mode": "PSK with (EC)DHE key establishment (psk_dhe_ke) (1)"
},
{
"name": "session_ticket (35)",
"data": ""
},
{
"name": "compress_certificate (27)",
"algorithms": [
"brotli (2)"
]
},
{
"name": "extended_master_secret (23)",
"master_secret_data": "",
"extended_master_secret_data": ""
},
{
"name": "status_request (5)",
"status_request": {
"certificate_status_type": "OSCP (1)",
"responder_id_list_length": 0,
"request_extensions_length": 0
}
},
{
"name": "application_layer_protocol_negotiation (16)",
"protocols": [
"h2",
"http/1.1"
]
},
{
"name": "server_name (0)",
"server_name": "tls.peet.ws"
},
{
"name": "supported_versions (43)",
"versions": [
"TLS_GREASE (0x2a2a)",
"TLS 1.3",
"TLS 1.2"
]
},
{
"name": "extensionRenegotiationInfo (boringssl) (65281)",
"data": "00"
},
{
"name": "TLS_GREASE (0x4a4a)"
}
],
"tls_version_record": "771",
"tls_version_negotiated": "772",
"ja3": "771,4865-4866-4867-49195-49199-49196-49200-52393-52392-49171-49172-156-157-47-53,10-51-11-17513-18-65037-13-45-35-27-23-5-16-0-43-65281,4588-29-23-24,0",
"ja3_hash": "f742910bd808b51f2eb7f4d378f75b64",
"ja4": "t13d1516h2_8daaf6152771_b1ff8ab2d16f",
"ja4_r": "t13d1516h2_002f,0035,009c,009d,1301,1302,1303,c013,c014,c02b,c02c,c02f,c030,cca8,cca9_0005,000a,000b,000d,0012,0015,0017,001b,0023,002b,002d,0033,4469,fe0d,ff01_0403,0804,0401,0503,0805,0501,0806,0601",
"peetprint": "GREASE-772-771|2-1.1|GREASE-4588-29-23-24|1027-2052-1025-1283-2053-1281-2054-1537|1|2|GREASE-4865-4866-4867-49195-49199-49196-49200-52393-52392-49171-49172-156-157-47-53|0-10-11-13-16-17513-18-23-27-35-43-45-5-51-65037-65281-GREASE-GREASE",
"peetprint_hash": "7466733991096b3f4e6c0e79b0083559",
"client_random": "86bdbe666998553620ea50df28332448c94bf4e32d50f64f75ae38af77bffb3f",
"session_id": "2dd95497cf1887a940c06b45a7bf3d380256bf984b07ac901e687343b8b24ede"
},
"http2": {
"akamai_fingerprint": "1:65536;2:0;4:6291456;6:262144|15663105|0|m,a,s,p",
"akamai_fingerprint_hash": "52d84b11737d980aef856699f885ca86",
"sent_frames": [
{
"frame_type": "SETTINGS",
"length": 24,
"settings": [
"HEADER_TABLE_SIZE = 65536",
"ENABLE_PUSH = 0",
"INITIAL_WINDOW_SIZE = 6291456",
"MAX_HEADER_LIST_SIZE = 262144"
]
},
{
"frame_type": "WINDOW_UPDATE",
"length": 4,
"increment": 15663105
},
{
"frame_type": "HEADERS",
"stream_id": 1,
"length": 361,
"headers": [
":method: GET",
":authority: tls.peet.ws",
":scheme: https",
":path: /api/all",
"accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.9",
"accept-encoding: gzip, deflate, br, zstd",
"accept-language: en-US,en;q=0.9",
"priority: u=0, i",
"sec-ch-ua: \\\"Google Chrome\\\";v=\\\"131\\\", \\\"Chromium\\\";v=\\\"131\\\", \\\"Not_A Brand\\\";v=\\\"24\\",
"sec-ch-ua-mobile: ?0",
"sec-ch-ua-platform: \\\"macOS\\",
"sec-fetch-dest: document",
"sec-fetch-mode: navigate",
"sec-fetch-site: none",
"upgrade-insecure-requests: 1",
"user-agent: rnet"
],
"flags": [
"EndStream (0x1)",
"EndHeaders (0x4)",
"Priority (0x20)"
],
"priority": {
"weight": 256,
"depends_on": 0,
"exclusive": 1
}
}
]
},
"tcpip": {
"ip": {},
"tcp": {}
}
}
/ # |
Your answer is irrelevant to the question. The question is why version 2.0.5 builds without errors, but 2.0.6 builds with errors. Instead of making open and transparent tests so that everyone can make sure that the fingerprints match browsers, you add a bunch of wrappers and overcomplicate your code, constantly changing structures and methods so that it is impossible to understand it. Am I supposed to take your word for it that your code emulates a browser? Why do I have to flip through a bunch of your wrappers every time? You show an example on your library, but it's built on a custom docker. Do I have to spend a week figuring out why your docker builds the library without errors? You should add tests to check that your code really emulates the browser. |
Now you should print out the full response or give up using it. |
You don't even have a log response. Is this asking me to tell your fortune? What does just one string represent? Does this help solve the problem? I don't think you should use this library. The best solution is to delete the package and use curl-cffi. |
You don't even understand the basic principles of TLS connection. Are you solving the problem? I don't owe you anything. You don't have to use it. |
What kind of log do you need? The tests build on 2.0.5, but on 2.0.6 armv7 throws an error. Your code is a fork of this library https://github.com/ignassew/reqwest-impersonate-okhttp, but you make it look like your own. Yes, you put a bunch of wrappers on it and added functionality, but you made it overcomplicated. As for curl_cffi, I used to use it, but at some point it started being detected as a bot. You don't need to be offended with me, you need to add validity tests for fingerprints to make sure the code emulates the browser. |
I asked you to print the complete response, did you do it? How can you know what happened and why it happened just by looking at a ja4, instead of just looking at my commit that caused the problem? |
You are wrong, my repository was originally based on: https://github.com/4JX/reqwest-impersonate |
You can do it yourself, and that's why you attack me? What did you do? |
Why should I follow your wishes and develop for you? Are you my boss? |
This is an open source library, what have you contributed to upstream? What are you doing when I am fixing the code upstream? |
This is not the reason why you feel complicated about the library. I have seen your code, which is quite simple. You can always use one version without upgrading. These upgrades are of no use to you, which means you don't need them at all. |
This is pure offtopic and I don't like not only your programming style but also your communication style. You talk about open code, but you make it in such a way that nobody can understand it. I just want you to add tests to your library. |
So I'm asking you to send me the TLS response log so I can see what happened and why it happened. You must be deviating from the topic. Aren't you saying so much just to provoke me? |
My code is simple, but you took my github workflow to bash your python bindings. |
You are totally hilarious, does that mean I can't use the same code as you? Like you forked my repository |
I noticed that you like updating my repository very much. You basically synchronize my repository every week. Doesn't this mean that you like it very much? |
I only have one request now, send me the TLS response, otherwise close this topic, it will not help solve the problem |
You know what I'm talking about. The musl builds that you hid in your custom docker. |
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
{
"donate": "Please consider donating to keep this API running. Visit https://tls.peet.ws/",
"ip": "20.43.247.174:44097",
"http_version": "h2",
"method": "GET",
"user_agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/131.0.0.0 Safari/537.36",
"tls": {
"ciphers": [
"TLS_GREASE (0x5A5A)",
"TLS_AES_128_GCM_SHA256",
"TLS_AES_256_GCM_SHA384",
"TLS_CHACHA20_POLY1305_SHA256",
"TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256",
"TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256",
"TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384",
"TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384",
"TLS_ECDHE_ECDSA_WITH_CHACHA20_POLY1305_SHA256",
"TLS_ECDHE_RSA_WITH_CHACHA20_POLY1305_SHA256",
"TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA",
"TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA",
"TLS_RSA_WITH_AES_128_GCM_SHA256",
"TLS_RSA_WITH_AES_256_GCM_SHA384",
"TLS_RSA_WITH_AES_128_CBC_SHA",
"TLS_RSA_WITH_AES_256_CBC_SHA"
],
"extensions": [
{
"name": "TLS_GREASE (0xcaca)"
},
{
"name": "server_name (0)",
"server_name": "tls.peet.ws"
},
{
"name": "signature_algorithms (13)",
"signature_algorithms": [
"ecdsa_secp256r1_sha256",
"rsa_pss_rsae_sha256",
"rsa_pkcs1_sha256",
"ecdsa_secp384r1_sha384",
"rsa_pss_rsae_sha384",
"rsa_pkcs1_sha384",
"rsa_pss_rsae_sha512",
"rsa_pkcs1_sha512"
]
},
{
"name": "ec_point_formats (11)",
"elliptic_curves_point_formats": [
"0x00"
]
},
{
"name": "status_request (5)",
"status_request": {
"certificate_status_type": "OSCP (1)",
"responder_id_list_length": 0,
"request_extensions_length": 0
}
},
{
"name": "supported_versions (43)",
"versions": [
"TLS_GREASE (0xbaba)",
"TLS 1.3",
"TLS 1.2"
]
},
{
"name": "compress_certificate (27)",
"algorithms": [
"brotli (2)"
]
},
{
"name": "psk_key_exchange_modes (45)",
"PSK_Key_Exchange_Mode": "PSK with (EC)DHE key establishment (psk_dhe_ke) (1)"
},
{
"name": "extended_master_secret (23)",
"master_secret_data": "",
"extended_master_secret_data": ""
},
{
"name": "application_layer_protocol_negotiation (16)",
"protocols": [
"h2",
"http/1.1"
]
},
{
"name": "application_settings (17613)",
"protocols": [
"h2"
]
},
{
"name": "session_ticket (35)",
"data": ""
},
{
"name": "extensionEncryptedClientHello (boringssl) (65037)",
"data": "0000010001c0002099f55371613ef03543f7455bbef9bee21fa9b59e3c15ad0b166ce1293c1d022b00f0c015724f921fdf2d30c057ae3e15d1411ed2e2fe0b4951e9f6a1879cee37fbaeb47fb433f489d68b6312fb51e3a7393ebd28730b49b3ccc5bbddee99c572f30fca3250e0229961f5cea032c34b51808a6c260303d4e8ad4998d47c1ac9d3c810f00bf4d724ee70f9c886e6df241767291fac48e45f05950ed7c92e59c58070c237a9ea1f593eee76d3e9f0cae26feb163541b4e02def4f0d837a9c8537bfe8478a781e72f02c52b71164101abe43bd47b5831cd1be2641990fcf263fa85a701bbc9f69ec653d11ecd23312f43743b79e181a67dc75c1da69694a06ad9bf95bd7601de7ca329d9174ee12eb92e8347426"
},
{
"name": "signed_certificate_timestamp (18)"
},
{
"name": "supported_groups (10)",
"supported_groups": [
"TLS_GREASE (0xbaba)",
"X25519MLKEM768 (4588)",
"X25519 (29)",
"P-256 (23)",
"P-384 (24)"
]
},
{
"name": "extensionRenegotiationInfo (boringssl) (65281)",
"data": "00"
},
{
"name": "key_share (51)",
"shared_keys": [
{
"TLS_GREASE (0xbaba)": "00"
},
{
"X25519MLKEM768 (4588)": "164957eaaa03a319c153d7ac9a5b7d08c179e67ab9b6d245225169aee980d9252e8684892cbb550b9503c1d5bdce8139736a39a6f474f295c836ccbc79d5475a71bcf32cbbe0e587a9287531a40c793b6dc6095102945666a18dda8a632fe65093fbc2f7a94bf9c22d298615e712a8abf6b1c8686e7cac13050cbc5ac2c4b0c5174f906f4241c42f869f09885be10041e9028a7037187b670e5174025f0c9107a47e08f357f8d85563c49f8efb2400507b7952566f2a26b97a1f112b2b8fab873da69d86b99ab4b39aa041c9a7b168c52976f96370ce0753f09257c6d412625bb9a154bd63c23650901f557382a5b1682174043091349f576b7308111c6a181f6c522aa491d59179d3993a250c4d6d24803331b6331cbc638988084a80a552c7674c772239be2278c11e5581ba262d58d91791a05b47fc85b6d79a33da5a287cc298210c4dba7fe96560b34801fd421cb02acb2b357eaf3851f3224969053c0ed0737e936c3edb6baa31232d2b29ca93384fb7549dbbb48f503ef45a7a339ca47082a766718a3db4a840b6aebc3441c481749cc9558e42747556a2d0681799589eb301c6036745a4c887d279412d076893081452f980a3f68fa256459c2a349c7145c2cc3477a94287bb52583c0eb13aa4e8855d4324bad19a472bbc79135858f2e51c3f780b96d0b7f096473f07ba20e09c6a61a1ed9876c9b9326154717264121d60332e81bcf859844d7718b414a177a7b398c004fedc6749cb7d82c89433e0642b12832aa55be0d939a4944731944d2872caf82b0eb182238dfbbef161ce9a9c0879881ea55a5903f3b7aa44a65736a2149a2f8e7271cf799c2d584a1ae7bd54046d36ec17baa3080ea0b2298bac329b8ccfb207b1a24b5a625355d1aaa1989d875953ac0811b22cca145c77d442b99b451a29d273401b5d6610a8fbb2172fe259e4013fe1204695838800092bcd283cb4d36c56635049bb5062ac30d9f827583701eb6a8cb1998b395876b720a0bc4aca81a0bf7329bb8f9483eb9b2e9a7bac9ab03534aa951963bb39a540ab877868d6cf97cc33ecc651835bc5475486dfea4cc868b4fd8b44526b032e855d0e32203356608de7959f29a798447223231d5c63465211bc0b9a72eda86e641b062999376cd73843eb8ee251689829a7c4018043953ed4a761a06c7f6c27221793641e66467e09906c1bc728a8196a697e1c9025bb94530d962d7f139335c9c042b7294eb3a0fcb91275504eece95e60c8336810175efc6faea4c99b34bf5d585f5644a555b673c91b3ec2538d707ba1e86a84dcf46febb5b99388382c42b97ea35ac840459326967c648b8125a7627549ff1cb6f7bb5c9d7c609fb271b1137e22f45413000cbe39b68f13b63d38821496bad3595f50d0059c158a1f1349d941c03f099e23a68523a0a3c89a7013b5cbe8d45b66c9c53e9b4fc7184805238848b161eff941fe116e8c94c0bf03791dc8cb4cd6179fa42154d017ed947ca644cacd061a7225557e764a7082c3c2f58f4d1a9cd2a6c391236630dc14c511bc130283d11c52794959ab842c5d028f3e242eb44cba1af60dfc3baf2b765244e510c0bc01ddb4b768e90d81e1c8c97249fdb5cfdb4bad37c1c5346845f343e186af1f7df074f46a17d2b1e2499b641e47fa6d64b41756e7875530affe0b66049e69642e3fd0a71f52a0a8adb75d6cf129fb170d"
},
{
"X25519 (29)": "7a4900089627de9a15cf9138299b473917a7e3defd5673d416aaf288d68b027c"
}
]
},
{
"name": "TLS_GREASE (0xdada)"
}
],
"tls_version_record": "771",
"tls_version_negotiated": "772",
"ja3": "771,4865-4866-4867-49195-49199-49196-49200-52393-52392-49171-49172-156-157-47-53,0-13-11-5-43-27-45-23-16-17613-35-65037-18-10-65281-51,4588-29-23-24,0",
"ja3_hash": "6285e9595fbd8c6b282bb1c4512c00cf",
"ja4": "t13d1516h2_8daaf6152771_fca9c764716e",
"ja4_r": "t13d1516h2_002f,0035,009c,009d,1301,1302,1303,c013,c014,c02b,c02c,c02f,c030,cca8,cca9_0005,000a,000b,000d,0012,0015,0017,001b,0023,002b,002d,0033,44cd,fe0d,ff01_0403,0804,0401,0503,0805,0501,0806,0601",
"peetprint": "GREASE-772-771|2-1.1|GREASE-4588-29-23-24|1027-2052-1025-1283-2053-1281-2054-1537|1|2|GREASE-4865-4866-4867-49195-49199-49196-49200-52393-52392-49171-49172-156-157-47-53|0-10-11-13-16-17613-18-23-27-35-43-45-5-51-65037-65281-GREASE-GREASE",
"peetprint_hash": "1d4ffe9b0e34acac0bd883fa7f79d7b5",
"client_random": "fa048aaa27f643b65fcdf9dc7bf57e03817cc7251236019f5e3b125bf39891a6",
"session_id": "003e9435afb41639b237bfc8ee69e54a2d407aacf0872e839d307c4311b2b3e0"
},
"http2": {
"akamai_fingerprint": "1:65536;2:0;4:6291456;6:262144|15663105|0|m,a,s,p",
"akamai_fingerprint_hash": "52d84b11737d980aef856699f885ca86",
"sent_frames": [
{
"frame_type": "SETTINGS",
"length": 24,
"settings": [
"HEADER_TABLE_SIZE = 65536",
"ENABLE_PUSH = 0",
"INITIAL_WINDOW_SIZE = 6291456",
"MAX_HEADER_LIST_SIZE = 262144"
]
},
{
"frame_type": "WINDOW_UPDATE",
"length": 4,
"increment": 15663105
},
{
"frame_type": "HEADERS",
"stream_id": 1,
"length": 444,
"headers": [
":method: GET",
":authority: tls.peet.ws",
":scheme: https",
":path: /api/all",
"accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.9",
"accept-encoding: gzip, deflate, br, zstd",
"accept-language: en-US,en;q=0.9",
"priority: u=0, i",
"sec-ch-ua: \\\"Google Chrome\\\";v=\\\"131\\\", \\\"Chromium\\\";v=\\\"131\\\", \\\"Not_A Brand\\\";v=\\\"24\\",
"sec-ch-ua-mobile: ?0",
"sec-ch-ua-platform: \\\"Windows\\",
"sec-fetch-dest: document",
"sec-fetch-mode: navigate",
"sec-fetch-site: none",
"upgrade-insecure-requests: 1",
"user-agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/131.0.0.0 Safari/537.36"
],
"flags": [
"EndStream (0x1)",
"EndHeaders (0x4)",
"Priority (0x20)"
],
"priority": {
"weight": 256,
"depends_on": 0,
"exclusive": 1
}
}
]
},
"tcpip": {
"ip": {},
"tcp": {}
}
} |
Reading This extension has changed. I need to check what happened. At present, it seems that it has nothing to do with my commit. your
now
|
That was before you made your custom docker. |
{
"name": "application_settings_old (17513)",
"protocols": [
"h2"
]
}, {
"name": "application_settings (17513)",
"protocols": [
"h2"
]
}, |
You think too much. I wrote this project using rquest earlier than you: https://github.com/0x676e67/ninja. You can find that I have submitted code for musl cross and rust-cross-musl in the records. These are all recorded. You don't need to slander me. |
I know you are unhappy with me, but this is not a reason for you to attack me. I have never complained about anyone doing open source. At most, I just don't use it. |
rust-cross-musl is available everywhere: https://github.com/taiki-e/rust-cross-toolchain |
I think you have me confused with someone else. |
This is also the user of the library. The cross of the project is provided by me. You can ask him yourself: https://github.com/dairoot/ChatGPT-Mirror/blob/main/docs/chatapi-gateway.md |
I didn't understand why on the same site the tests are successful for all configurations except armv7 |
You started by attacking me with things that have nothing to do with the issue instead of providing me with useful information in the first place. |
I don't understand either. Can you compile a package locally and run a test in armv7 to see how it goes? |
How much is 1234567890 * 1234567890? |
::version |
Please complete the human-machine verification. |
You seem like a robot that can't understand words, just repeating your ignorant opinions without any change. |
I will close this issue and shield the user, you can use curl-cffi now. |
This issue shows that the user is just talking nonsense and knows nothing about TLS. They updated to the latest flawed BoringSSL version released upstream. When it comes to testing, they’re not even willing to contribute a single PR and only know how to shift the responsibility onto the author. There’s no involvement in contributing, no complaints about the project’s complexity, and no suggestions from anyone. The entire lifecycle of the project, including the patches and libraries needed to fully support TLS/HTTP2 functionality, has almost entirely been done by me. Meanwhile, this person just keeps rambling and does absolutely nothing. |
https://github.com/deedy5/primp/actions/runs/13348571329/job/37282139615
The text was updated successfully, but these errors were encountered: