Skip to content

Commit 1cdf7be

Browse files
committed
Merge branch 'main' of gitlab.cryptoworkshop.com:root/bc-java
2 parents 869bbff + b63a31b commit 1cdf7be

File tree

5 files changed

+13
-27
lines changed

5 files changed

+13
-27
lines changed

tls/src/main/java/org/bouncycastle/tls/DTLSRecordLayer.java

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -288,6 +288,9 @@ public int receive(byte[] buf, int off, int len, int waitMillis)
288288
return receive(buf, off, len, waitMillis, null);
289289
}
290290

291+
/**
292+
* A waitMillis of zero is interpreted as an infinite timeout.
293+
*/
291294
int receive(byte[] buf, int off, int len, int waitMillis, DTLSRecordCallback recordCallback)
292295
throws IOException
293296
{

tls/src/main/java/org/bouncycastle/tls/DTLSReliableHandshake.java

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -100,15 +100,17 @@ static void sendHelloVerifyRequest(DatagramSender sender, long recordSeq, byte[]
100100
DTLSReliableHandshake(TlsContext context, DTLSRecordLayer transport, int timeoutMillis, int initialResendMillis,
101101
DTLSRequest request)
102102
{
103+
long currentTimeMillis = System.currentTimeMillis();
104+
103105
this.recordLayer = transport;
104106
this.handshakeHash = new DeferredHash(context);
105-
this.handshakeTimeout = Timeout.forWaitMillis(timeoutMillis);
107+
this.handshakeTimeout = Timeout.forWaitMillis(timeoutMillis, currentTimeMillis);
106108
this.initialResendMillis = initialResendMillis;
107109

108110
if (null != request)
109111
{
110112
resendMillis = initialResendMillis;
111-
resendTimeout = new Timeout(resendMillis);
113+
resendTimeout = new Timeout(resendMillis, currentTimeMillis);
112114

113115
long recordSeq = request.getRecordSeq();
114116
int messageSeq = request.getMessageSeq();

tls/src/main/java/org/bouncycastle/tls/DTLSTransport.java

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -31,6 +31,9 @@ public int receive(byte[] buf, int off, int len, int waitMillis)
3131
return receive(buf, off, len, waitMillis, null);
3232
}
3333

34+
/**
35+
* A waitMillis of zero is interpreted as an infinite timeout.
36+
*/
3437
public int receive(byte[] buf, int off, int len, int waitMillis, DTLSRecordCallback recordCallback)
3538
throws IOException
3639
{

tls/src/main/java/org/bouncycastle/tls/DatagramReceiver.java

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -6,5 +6,8 @@ public interface DatagramReceiver
66
{
77
int getReceiveLimit() throws IOException;
88

9+
/**
10+
* A waitMillis of zero is interpreted as an infinite timeout.
11+
*/
912
int receive(byte[] buf, int off, int len, int waitMillis) throws IOException;
1013
}

tls/src/main/java/org/bouncycastle/tls/Timeout.java

Lines changed: 0 additions & 25 deletions
Original file line numberDiff line numberDiff line change
@@ -16,11 +16,6 @@ class Timeout
1616
this.startMillis = Math.max(0, currentTimeMillis);
1717
}
1818

19-
// long remainingMillis()
20-
// {
21-
// return remainingMillis(System.currentTimeMillis());
22-
// }
23-
2419
synchronized long remainingMillis(long currentTimeMillis)
2520
{
2621
// If clock jumped backwards, reset start time
@@ -42,11 +37,6 @@ synchronized long remainingMillis(long currentTimeMillis)
4237
return remaining;
4338
}
4439

45-
// static int constrainWaitMillis(int waitMillis, Timeout timeout)
46-
// {
47-
// return constrainWaitMillis(waitMillis, timeout, System.currentTimeMillis());
48-
// }
49-
5040
static int constrainWaitMillis(int waitMillis, Timeout timeout, long currentTimeMillis)
5141
{
5242
if (waitMillis < 0)
@@ -72,11 +62,6 @@ static int constrainWaitMillis(int waitMillis, Timeout timeout, long currentTime
7262
return Math.min(waitMillis, timeoutMillis);
7363
}
7464

75-
static Timeout forWaitMillis(int waitMillis)
76-
{
77-
return forWaitMillis(waitMillis, System.currentTimeMillis());
78-
}
79-
8065
static Timeout forWaitMillis(int waitMillis, long currentTimeMillis)
8166
{
8267
if (waitMillis < 0)
@@ -90,11 +75,6 @@ static Timeout forWaitMillis(int waitMillis, long currentTimeMillis)
9075
return null;
9176
}
9277

93-
// static int getWaitMillis(Timeout timeout)
94-
// {
95-
// return getWaitMillis(timeout, System.currentTimeMillis());
96-
// }
97-
9878
static int getWaitMillis(Timeout timeout, long currentTimeMillis)
9979
{
10080
if (null == timeout)
@@ -113,11 +93,6 @@ static int getWaitMillis(Timeout timeout, long currentTimeMillis)
11393
return (int)remainingMillis;
11494
}
11595

116-
// static boolean hasExpired(Timeout timeout)
117-
// {
118-
// return hasExpired(timeout, System.currentTimeMillis());
119-
// }
120-
12196
static boolean hasExpired(Timeout timeout, long currentTimeMillis)
12297
{
12398
return null != timeout && timeout.remainingMillis(currentTimeMillis) < 1L;

0 commit comments

Comments
 (0)