Push and Pull request to Jenkins gets HTTP status -2 and null response from Jenkins
Asked by Rick Martin:

I'm running Jenkins version 2.369 with Bitbucket Push and Pull Request plugin version 2.8.3. I've got a webhook setup in Bitbucket to trigger a job in Jenkins.

When I do a commit to bitbucket, the plugin gets triggered, but the job on Jenkins does not run. When looking at the "View Requests" for webhooks in the Bitbucket UI, I see:

Response from <https://3.89.195.218:8080/bitbucket-hook/>  
HTTP status: -2

Headers  
Body  
\<null response\>

I've not been able to find logs on the Jenkins controller to look at the HTTP traffic there, so I installed tcpdump. If I capture HTTP traffic on the controller I find this data showing a return from Jenkins to Bitbucket.

22:39:09.133202 IP \<Jenkins-internal-AWS-ip\>.webcache \> 18.246.31.232.25366: Flags \[P.\], seq 1:206, ack 313, win 219, options \[nop,nop,TS val 1282987750 ecr 2120152488\], length 205: HTTP: HTTP/1.1 400 Bad Request  
E...#,@.@.6..#........c.\~...r..............  
Lx..\~\^..HTTP/1.1 400 Bad Request  
Content-Type: text/html;charset=iso-8859-1  
Content-Length: 70  
Connection: close  
Server: Jetty(10.0.12)

Bad Message 400 reason: Illegal character CNTL=0x16 (with some HTML formatting removed)

From this I see two problems:

* Jenkins returns a status of 400 but the Bitbucket UI is showing a -2, and
* Bitbucket seems to be sending an unescaped character in its request.

Has anyone else run into this issue and know a resolution?

Thanks in advance,

Rick


Answers:
author: Theodora Boudale
body: Hi Rick,

Could you please let us know

* the workspace-id and repo name ++masked++ (just provide 2-3 letters from each, so I can identify the repo from the ones you have access to)
* a timeframe during which you had failed events with this error from this webhook

I can then check the webhook logs for the repo and see if there is more information regarding the error.

Kind regards,  
Theodora

comments: author: Rick Martin
body: Hi Theodora,

Workspace ID is ric....  
The repo name is jenkins_..._1.  
Most recent events:  
X-Request-UUID 734cc860-2ee4-455b-a647-6fa03d03c802  
User-Agent Bitbucket-Webhooks/2.0  
X-Event-Time Tue, 17 Jan 2023 01:10:57 GMT  
Content-Type application/json  
X-Hook-UUID 6375280a-34ba-4464-ac80-b8e27c17b893

X-Hook-UUID 6375280a-34ba-4464-ac80-b8e27c17b893  
X-Request-UUID b09578de-1200-4d9f-ba4c-25cb9c2a1fd7  
User-Agent Bitbucket-Webhooks/2.0  
X-Event-Time Fri, 13 Jan 2023 00:30:12 GMT  
Content-Type application/json

X-Hook-UUID 6375280a-34ba-4464-ac80-b8e27c17b893  
X-Request-UUID d7b26711-8c9b-4711-8f4c-bc37e5ab9d81  
User-Agent Bitbucket-Webhooks/2.0  
X-Event-Time Thu, 12 Jan 2023 22:56:55 GMT  
Content-Type application/json

Let me know if you need any other information, and thanks for your help,

Rick


author: Theodora Boudale
body: Hi Rick,

Thank you for the info. The webhooks logs for this repo indicate an SSL related error.

I would suggest editing the webhook from **Repository settings** and temporarily checking the option **Skip certificate verification** for testing purposes, to verify if the webhook works without certificate verification. If it does, please check if there are any issues with the server's certificate.

Kind regards,  
Theodora


author: Rick Martin
body: Hi Theadora,

Sorry for the late reply. My daughter (and her 2 month old, Theodore) arrived in town last Friday.

I ran another test with **Skip certificate verification**checked and get the same result.

Thanks again for your help,

Rick


author: Patrik S
body: Hello [@Rick Martin](/t5/user/viewprofilepage/user-id/4813168) !

The error being returned by the webhooks processor seems to be related to the TLS version being used on your Jenkins server.

It seems that during the TLS handshake, your Jenkins server is offering an old TLS version (TLSv1) that is not supported. You can refer to the blog post [Update to supported cipher suites in Bitbucket Cloud](https://bitbucket.org/blog/update-to-supported-cipher-suites-in-bitbucket-cloud) for further details on the deprecated ciphers.

In this case, I would recommend checking if your Jenkins instance is using at least TLSv1.2. Also, since Jenkins is based on java, you might want to verify if your java version supports and is configured to use at least TLSv1.2

All the current supported ciphers are documented at [Supported security protocols for Atlassian Cloud Products .](https://support.atlassian.com/security-and-access-policies/docs/supported-security-protocols-for-atlassian-cloud-products/)

Thank you, [@Rick Martin](/t5/user/viewprofilepage/user-id/4813168) .

Patrik S


Tags: bitbucket-cloud

cloud

jenkins