Skip to content

Commit 3a3b4e7

Browse files
committed
Merge branch '2.x' into 3.1
2 parents aa7e49b + f1b9d6d commit 3a3b4e7

7 files changed

Lines changed: 20 additions & 6 deletions

File tree

‎release-notes/CREDITS‎

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -339,6 +339,8 @@ Joshua Arnold (@josharnold52)
339339
Omkhar Arasaratnam (@omkhar)
340340
* Reported, suggested fix for #5950: Improve `UUIDeserializer` error handling
341341
[3.1.4]
342+
* Reported, suggested fix for #5951: Improve `InetSocketAddress` deserialization
343+
[3.1.4]
342344
* Reported, suggested fix for #5956: Fix problem with float-to-byte range check
343345
[3.1.4]
344346
* Contributed fix for #5957: Improve `java.time.Month` deserialization validation

‎release-notes/CREDITS-2.x‎

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1920,6 +1920,8 @@ Fawzi Essam (@iifawzi)
19201920
Omkhar Arasaratnam (@omkhar)
19211921
* Reported #5950: Improve `UUIDeserializer` error handling
19221922
(2.18.8)
1923+
* Reported #5951: Improve `InetSocketAddress` deserialization
1924+
(2.18.8)
19231925
19241926
Liam Feid (@fxshlein)
19251927
* Contributed #1467: Support `@JsonUnwrapped` with `@JsonCreator`

‎release-notes/VERSION‎

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -13,6 +13,8 @@ No changes since 3.1
1313

1414
#5950: Improve `UUIDeserializer` error handling
1515
(reported, fix suggested by Omkhar A)
16+
#5951: Improve `InetSocketAddress` deserialization
17+
(reported by Omkhar A)
1618
#5956: Fix problem with float-to-byte range check
1719
(reported, fix suggested by Omkhar A)
1820
#5957: Improve `java.time.Month` deserialization validation

‎release-notes/VERSION-2.x‎

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,9 @@ Project: jackson-databind
2424

2525
#5931: Fix `AtomicLongDeserializer` value truncation on coerced values
2626
(fixed by Lee Jiwon)
27-
#5950: Improve `UUIDeserializer` error handling
27+
#5950: Improve `UUIDeserializer` error handling#
28+
(reported by Omkhar A)
29+
#5951: Improve `InetSocketAddress` deserialization
2830
(reported by Omkhar A)
2931

3032
2.21.3 (28-Apr-2026)
@@ -292,6 +294,8 @@ No changes since 2.19.2
292294

293295
#5950: Improve `UUIDeserializer` error handling
294296
(reported by Omkhar A)
297+
#5951: Improve `InetSocketAddress` deserialization
298+
(reported by Omkhar A)
295299

296300
2.18.7 (24-Apr-2026)
297301
2.18.6 (22-Feb-2026)

‎src/main/java/tools/jackson/databind/deser/jdk/JDKFromStringDeserializer.java‎

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -291,7 +291,8 @@ private Locale _deserializeLocale(String fullValue, DeserializationContext ctxt)
291291
}
292292

293293
protected InetSocketAddress _inetSocketAddress(String host, int port) {
294-
return new InetSocketAddress(host, port);
294+
// 05-May-2026, tatu: [databind#5951] Prevent DNS lookup:
295+
return InetSocketAddress.createUnresolved(host, port);
295296
}
296297

297298
static class StringBuilderDeserializer extends JDKFromStringDeserializer

‎src/test/java/tools/jackson/databind/deser/jdk/JDKStringLikeTypeDeserTest.java‎

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -139,14 +139,14 @@ public void testInetSocketAddress() throws Exception
139139
{
140140
ObjectReader r = MAPPER.readerFor(InetSocketAddress.class);
141141
InetSocketAddress address = r.readValue(q("127.0.0.1"));
142-
assertEquals("127.0.0.1", address.getAddress().getHostAddress());
142+
assertEquals("127.0.0.1", address.getHostName());
143143

144144
InetSocketAddress ip6 = r.readValue(q("2001:db8:85a3:8d3:1319:8a2e:370:7348"));
145-
assertEquals("2001:db8:85a3:8d3:1319:8a2e:370:7348", ip6.getAddress().getHostAddress());
145+
assertEquals("2001:db8:85a3:8d3:1319:8a2e:370:7348", ip6.getHostName());
146146

147147
InetSocketAddress ip6port = r.readValue(
148148
q("[2001:db8:85a3:8d3:1319:8a2e:370:7348]:443"));
149-
assertEquals("2001:db8:85a3:8d3:1319:8a2e:370:7348", ip6port.getAddress().getHostAddress());
149+
assertEquals("[2001:db8:85a3:8d3:1319:8a2e:370:7348]", ip6port.getHostName());
150150
assertEquals(443, ip6port.getPort());
151151

152152
// should we try resolving host names? That requires connectivity...

‎src/test/java/tools/jackson/databind/ser/jdk/JDKTypeSerializationTest.java‎

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -271,13 +271,16 @@ public void testInetSocketAddress() throws IOException
271271
{
272272
assertEquals(q("127.0.0.1:8080"),
273273
MAPPER.writeValueAsString(new InetSocketAddress("127.0.0.1", 8080)));
274+
assertEquals(q("127.0.0.1:8080"),
275+
MAPPER.writeValueAsString(InetSocketAddress.createUnresolved("127.0.0.1", 8080)));
274276
assertEquals(q("google.com:6667"),
275277
MAPPER.writeValueAsString(new InetSocketAddress("google.com", 6667)));
278+
assertEquals(q("google.com:6667"),
279+
MAPPER.writeValueAsString(InetSocketAddress.createUnresolved("google.com", 6667)));
276280
assertEquals(q("[2001:db8:85a3:8d3:1319:8a2e:370:7348]:443"),
277281
MAPPER.writeValueAsString(new InetSocketAddress("2001:db8:85a3:8d3:1319:8a2e:370:7348", 443)));
278282
}
279283

280-
// [JACKSON-597]
281284
@Test
282285
public void testClass() throws IOException
283286
{

0 commit comments

Comments
 (0)