Skip to content

Commit d74ae15

Browse files
authored
HBASE-25568 Upgrade Thrift jar to fix CVE-2020-13949 (#3043)
Signed-off-by: stack <[email protected]> Signed-off-by: Duo Zhang <[email protected]>
1 parent 59ec375 commit d74ae15

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

62 files changed

+825
-1284
lines changed

hbase-examples/README.txt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -58,7 +58,7 @@ Example code.
5858

5959
* CPP: hbase-examples/src/main/cpp/DemoClient.cpp
6060
1. Make sure you have Thrift C++ libraries; modify Makefile if necessary.
61-
The recent (0.13.0 as of this writing) version of Thrift can be downloaded from http://thrift.apache.org/download/.
61+
The recent (0.14.1 as of this writing) version of Thrift can be downloaded from http://thrift.apache.org/download/.
6262
2. Execute {make}.
6363
3. Execute {./DemoClient <host> <port>}.
6464

hbase-examples/src/main/java/org/apache/hadoop/hbase/thrift2/DemoClient.java

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -35,12 +35,13 @@
3535
import org.apache.hadoop.hbase.thrift2.generated.TResult;
3636
import org.apache.hadoop.hbase.util.Bytes;
3737
import org.apache.hadoop.hbase.util.ClientUtils;
38+
import org.apache.thrift.TConfiguration;
3839
import org.apache.thrift.protocol.TBinaryProtocol;
3940
import org.apache.thrift.protocol.TProtocol;
40-
import org.apache.thrift.transport.TFramedTransport;
4141
import org.apache.thrift.transport.TSaslClientTransport;
4242
import org.apache.thrift.transport.TSocket;
4343
import org.apache.thrift.transport.TTransport;
44+
import org.apache.thrift.transport.layered.TFramedTransport;
4445
import org.apache.yetus.audience.InterfaceAudience;
4546

4647
@InterfaceAudience.Private
@@ -91,7 +92,7 @@ public void run() throws Exception {
9192
int timeout = 10000;
9293
boolean framed = false;
9394

94-
TTransport transport = new TSocket(host, port, timeout);
95+
TTransport transport = new TSocket(new TConfiguration(), host, port, timeout);
9596
if (framed) {
9697
transport = new TFramedTransport(transport);
9798
} else if (secure) {

hbase-thrift/pom.xml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -338,12 +338,12 @@
338338
<requireProperty>
339339
<property>thrift.version</property>
340340
<message>"The Thrift version must be specified."</message>
341-
<regex>0\.13\.0</regex>
341+
<regex>0\.14\.1</regex>
342342
<regexMessage>
343343
-
344344
-
345345
[FATAL] ==========================================================================================
346-
[FATAL] HBase Thrift requires the thrift generator version 0.13.0.
346+
[FATAL] HBase Thrift requires the thrift generator version 0.14.1.
347347
[FATAL] Setting it to something else needs to be reviewed for wire and behavior compatibility.
348348
[FATAL] ==========================================================================================
349349
-

hbase-thrift/src/main/java/org/apache/hadoop/hbase/thrift/ThriftServer.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -120,13 +120,13 @@
120120
import org.apache.thrift.server.TServer;
121121
import org.apache.thrift.server.TServlet;
122122
import org.apache.thrift.server.TThreadedSelectorServer;
123-
import org.apache.thrift.transport.TFramedTransport;
124123
import org.apache.thrift.transport.TNonblockingServerSocket;
125124
import org.apache.thrift.transport.TNonblockingServerTransport;
126125
import org.apache.thrift.transport.TSaslServerTransport;
127126
import org.apache.thrift.transport.TServerSocket;
128127
import org.apache.thrift.transport.TServerTransport;
129128
import org.apache.thrift.transport.TTransportFactory;
129+
import org.apache.thrift.transport.layered.TFramedTransport;
130130
import org.apache.yetus.audience.InterfaceAudience;
131131
import org.slf4j.Logger;
132132
import org.slf4j.LoggerFactory;
@@ -481,7 +481,7 @@ protected void setupServer() throws Exception {
481481
+ " doesn't work with framed transport yet");
482482
}
483483
transportFactory = new TFramedTransport.Factory(
484-
conf.getInt(MAX_FRAME_SIZE_CONF_KEY, MAX_FRAME_SIZE_CONF_DEFAULT) * 1024 * 1024);
484+
conf.getInt(MAX_FRAME_SIZE_CONF_KEY, MAX_FRAME_SIZE_CONF_DEFAULT) * 1024 * 1024);
485485
LOG.debug("Using framed transport");
486486
} else if (qop == null) {
487487
transportFactory = new TTransportFactory();

hbase-thrift/src/main/java/org/apache/hadoop/hbase/thrift/generated/AlreadyExists.java

Lines changed: 3 additions & 5 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

hbase-thrift/src/main/java/org/apache/hadoop/hbase/thrift/generated/BatchMutation.java

Lines changed: 5 additions & 7 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

hbase-thrift/src/main/java/org/apache/hadoop/hbase/thrift/generated/ColumnDescriptor.java

Lines changed: 11 additions & 13 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

0 commit comments

Comments
 (0)