Skip to content

Commit 850714c

Browse files
Merge branch '4.16' into main
2 parents 38181b2 + 4ffb949 commit 850714c

File tree

22 files changed

+158
-56
lines changed

22 files changed

+158
-56
lines changed

api/src/main/java/com/cloud/network/vpn/RemoteAccessVpnService.java

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -43,6 +43,8 @@ public interface RemoteAccessVpnService {
4343

4444
List<? extends VpnUser> listVpnUsers(long vpnOwnerId, String userName);
4545

46+
boolean applyVpnUsers(long vpnOwnerId, String userName, boolean forRemove) throws ResourceUnavailableException;
47+
4648
boolean applyVpnUsers(long vpnOwnerId, String userName) throws ResourceUnavailableException;
4749

4850
Pair<List<? extends RemoteAccessVpn>, Integer> searchForRemoteAccessVpns(ListRemoteAccessVpnsCmd cmd);

api/src/main/java/org/apache/cloudstack/api/command/user/ssh/ListSSHKeyPairsCmd.java

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -40,6 +40,8 @@ public class ListSSHKeyPairsCmd extends BaseListProjectAndAccountResourcesCmd {
4040
/////////////////////////////////////////////////////
4141
//////////////// API parameters /////////////////////
4242
/////////////////////////////////////////////////////
43+
@Parameter(name = ApiConstants.ID, type = CommandType.UUID, entityType = SSHKeyPairResponse.class, description = "the ID of the ssh keypair")
44+
private Long id;
4345

4446
@Parameter(name = ApiConstants.NAME, type = CommandType.STRING, description = "A key pair name to look for")
4547
private String name;
@@ -50,6 +52,9 @@ public class ListSSHKeyPairsCmd extends BaseListProjectAndAccountResourcesCmd {
5052
/////////////////////////////////////////////////////
5153
/////////////////// Accessors ///////////////////////
5254
/////////////////////////////////////////////////////
55+
public Long getId() {
56+
return id;
57+
}
5358

5459
public String getName() {
5560
return name;

api/src/main/java/org/apache/cloudstack/api/command/user/vpn/RemoveVpnUserCmd.java

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -120,9 +120,8 @@ public void execute() {
120120
}
121121

122122
boolean appliedVpnUsers = false;
123-
124123
try {
125-
appliedVpnUsers = _ravService.applyVpnUsers(ownerId, userName);
124+
appliedVpnUsers = _ravService.applyVpnUsers(ownerId, userName, true);
126125
} catch (ResourceUnavailableException ex) {
127126
String errorMessage = String.format("Failed to refresh VPN user=[%s] due to resource unavailable. VPN owner id=[%s].", userName, ownerId);
128127
s_logger.error(errorMessage, ex);

api/src/main/java/org/apache/cloudstack/api/response/SSHKeyPairResponse.java

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -21,8 +21,12 @@
2121
import org.apache.cloudstack.api.ApiConstants;
2222

2323
import com.cloud.serializer.Param;
24+
import com.cloud.user.SSHKeyPair;
25+
2426
import org.apache.cloudstack.api.BaseResponseWithAnnotations;
27+
import org.apache.cloudstack.api.EntityReference;
2528

29+
@EntityReference(value = SSHKeyPair.class)
2630
public class SSHKeyPairResponse extends BaseResponseWithAnnotations {
2731

2832
@SerializedName(ApiConstants.ID)

client/pom.xml

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -564,6 +564,11 @@
564564
<artifactId>bcpkix-jdk15on</artifactId>
565565
<version>${cs.bcprov.version}</version>
566566
</dependency>
567+
<dependency>
568+
<groupId>org.bouncycastle</groupId>
569+
<artifactId>bctls-jdk15on</artifactId>
570+
<version>${cs.bcprov.version}</version>
571+
</dependency>
567572
</dependencies>
568573
<configuration>
569574
<supportedPackagings>
@@ -751,6 +756,12 @@
751756
<overWrite>false</overWrite>
752757
<outputDirectory>${project.build.directory}/lib</outputDirectory>
753758
</artifactItem>
759+
<artifactItem>
760+
<groupId>org.bouncycastle</groupId>
761+
<artifactId>bctls-jdk15on</artifactId>
762+
<overWrite>false</overWrite>
763+
<outputDirectory>${project.build.directory}/lib</outputDirectory>
764+
</artifactItem>
754765
</artifactItems>
755766
</configuration>
756767
</execution>
@@ -786,6 +797,7 @@
786797
<exclude>org.apache.geronimo.specs:geronimo-javamail_1.4_spec</exclude>
787798
<exclude>org.bouncycastle:bcprov-jdk15on</exclude>
788799
<exclude>org.bouncycastle:bcpkix-jdk15on</exclude>
800+
<exclude>org.bouncycastle:bctls-jdk15on</exclude>
789801
<exclude>mysql:mysql-connector-java</exclude>
790802
</excludes>
791803
</artifactSet>

framework/db/src/main/java/com/cloud/utils/db/GenericDaoBase.java

Lines changed: 16 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -56,6 +56,7 @@
5656
import javax.persistence.Table;
5757
import javax.persistence.TableGenerator;
5858

59+
import org.apache.commons.lang3.StringUtils;
5960
import org.apache.log4j.Logger;
6061

6162
import com.cloud.utils.DateUtil;
@@ -878,7 +879,7 @@ protected String buildSelectByIdSql(final StringBuilder sql) {
878879
for (final Field field : clazz.getDeclaredFields()) {
879880
sql.append(_table).append(".").append(DbUtil.getColumnName(field, overrides)).append(" = ? AND ");
880881
}
881-
sql.delete(sql.length() - 4, sql.length());
882+
removeAndClause(sql);
882883
}
883884

884885
return sql.toString();
@@ -1262,10 +1263,11 @@ protected StringBuilder createPartialSelectSql(SearchCriteria<?> sc, final boole
12621263

12631264
@DB()
12641265
protected void addJoins(StringBuilder str, Collection<JoinBuilder<SearchCriteria<?>>> joins) {
1266+
boolean hasWhereClause = true;
12651267
int fromIndex = str.lastIndexOf("WHERE");
12661268
if (fromIndex == -1) {
12671269
fromIndex = str.length();
1268-
str.append(" WHERE ");
1270+
hasWhereClause = false;
12691271
} else {
12701272
str.append(" AND ");
12711273
}
@@ -1287,13 +1289,19 @@ protected void addJoins(StringBuilder str, Collection<JoinBuilder<SearchCriteria
12871289
.append(" ");
12881290
str.insert(fromIndex, onClause);
12891291
String whereClause = join.getT().getWhereClause();
1290-
if ((whereClause != null) && !"".equals(whereClause)) {
1292+
if (StringUtils.isNotEmpty(whereClause)) {
1293+
if (!hasWhereClause) {
1294+
str.append(" WHERE ");
1295+
hasWhereClause = true;
1296+
}
12911297
str.append(" (").append(whereClause).append(") AND");
12921298
}
12931299
fromIndex += onClause.length();
12941300
}
12951301

1296-
str.delete(str.length() - 4, str.length());
1302+
if (hasWhereClause) {
1303+
removeAndClause(str);
1304+
}
12971305

12981306
for (JoinBuilder<SearchCriteria<?>> join : joins) {
12991307
if (join.getT().getJoins() != null) {
@@ -1302,6 +1310,10 @@ protected void addJoins(StringBuilder str, Collection<JoinBuilder<SearchCriteria
13021310
}
13031311
}
13041312

1313+
private void removeAndClause(StringBuilder sql) {
1314+
sql.delete(sql.length() - 4, sql.length());
1315+
}
1316+
13051317
@Override
13061318
@DB()
13071319
public List<T> search(final SearchCriteria<T> sc, final Filter filter) {

plugins/hypervisors/kvm/src/main/java/com/cloud/hypervisor/kvm/resource/DirectVifDriver.java

Lines changed: 3 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -19,6 +19,7 @@
1919

2020
package com.cloud.hypervisor.kvm.resource;
2121

22+
import org.apache.commons.compress.utils.Sets;
2223
import org.apache.log4j.Logger;
2324
import org.libvirt.LibvirtException;
2425

@@ -47,12 +48,8 @@ public class DirectVifDriver extends VifDriverBase {
4748
public LibvirtVMDef.InterfaceDef plug(NicTO nic, String guestOsType, String nicAdapter, Map<String, String> extraConfig) throws InternalErrorException, LibvirtException {
4849
LibvirtVMDef.InterfaceDef intf = new LibvirtVMDef.InterfaceDef();
4950

50-
if (nic.getType() == Networks.TrafficType.Guest) {
51-
Integer networkRateKBps = (nic.getNetworkRateMbps() != null && nic.getNetworkRateMbps().intValue() != -1) ? nic.getNetworkRateMbps().intValue() * 128 : 0;
52-
intf.defDirectNet(_libvirtComputingResource.getNetworkDirectDevice(), null, nic.getMac(), getGuestNicModel(guestOsType, nicAdapter),
53-
_libvirtComputingResource.getNetworkDirectSourceMode(), networkRateKBps);
54-
55-
} else if (nic.getType() == Networks.TrafficType.Public) {
51+
if (Sets.newHashSet(Networks.TrafficType.Guest,
52+
Networks.TrafficType.Public).contains(nic.getType())) {
5653
Integer networkRateKBps = (nic.getNetworkRateMbps() != null && nic.getNetworkRateMbps().intValue() != -1) ? nic.getNetworkRateMbps().intValue() * 128 : 0;
5754
intf.defDirectNet(_libvirtComputingResource.getNetworkDirectDevice(), null, nic.getMac(), getGuestNicModel(guestOsType, nicAdapter),
5855
_libvirtComputingResource.getNetworkDirectSourceMode(), networkRateKBps);

plugins/integrations/kubernetes-service/pom.xml

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -126,6 +126,11 @@
126126
<artifactId>bcprov-jdk15on</artifactId>
127127
<version>${cs.bcprov.version}</version>
128128
</dependency>
129+
<dependency>
130+
<groupId>org.bouncycastle</groupId>
131+
<artifactId>bctls-jdk15on</artifactId>
132+
<version>${cs.bcprov.version}</version>
133+
</dependency>
129134
<dependency>
130135
<groupId>joda-time</groupId>
131136
<artifactId>joda-time</artifactId>

pom.xml

Lines changed: 8 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -123,7 +123,7 @@
123123
<cs.axiom.version>1.2.8</cs.axiom.version>
124124
<cs.axis.version>1.4</cs.axis.version>
125125
<cs.batik.version>1.14</cs.batik.version>
126-
<cs.bcprov.version>1.64</cs.bcprov.version>
126+
<cs.bcprov.version>1.70</cs.bcprov.version>
127127
<cs.cglib.version>3.3.0</cs.cglib.version>
128128
<cs.checkstyle-lib.version>8.18</cs.checkstyle-lib.version>
129129
<cs.cxf.version>3.2.14</cs.cxf.version>
@@ -145,7 +145,7 @@
145145
<cs.jaxb.version>2.3.0</cs.jaxb.version>
146146
<cs.jaxws.version>2.3.2-1</cs.jaxws.version>
147147
<cs.jersey-client.version>2.26</cs.jersey-client.version>
148-
<cs.jetty.version>9.4.36.v20210114</cs.jetty.version>
148+
<cs.jetty.version>9.4.44.v20210927</cs.jetty.version>
149149
<cs.jetty-maven-plugin.version>9.4.27.v20200227</cs.jetty-maven-plugin.version>
150150
<cs.jna.version>5.5.0</cs.jna.version>
151151
<cs.joda-time.version>2.10.9</cs.joda-time.version>
@@ -554,6 +554,11 @@
554554
<artifactId>bcprov-jdk15on</artifactId>
555555
<version>${cs.bcprov.version}</version>
556556
</dependency>
557+
<dependency>
558+
<groupId>org.bouncycastle</groupId>
559+
<artifactId>bctls-jdk15on</artifactId>
560+
<version>${cs.bcprov.version}</version>
561+
</dependency>
557562
<dependency>
558563
<groupId>org.codehaus.groovy</groupId>
559564
<artifactId>groovy-all</artifactId>
@@ -664,7 +669,7 @@
664669
<dependency>
665670
<groupId>xerces</groupId>
666671
<artifactId>xercesimpl</artifactId>
667-
<version>2.12.0</version>
672+
<version>${cs.xercesImpl.version}</version>
668673
</dependency>
669674
<dependency>
670675
<groupId>xml-apis</groupId>

scripts/storage/secondary/setup-sysvm-tmplt

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -45,6 +45,8 @@ if [[ ! $@ =~ ^\-.+ ]]; then
4545
fi
4646

4747
OPTERR=0
48+
DISKSPACE=2120000 #free disk space required in kilobytes
49+
4850
while getopts 'h:f:d:u::'# OPTION
4951
do
5052
case $OPTION in

0 commit comments

Comments
 (0)