You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@cloudstack.apache.org by Syed Ahmed <sa...@cloudops.com> on 2013/10/30 17:20:43 UTC

Review Request 14976: [SSL Termination support] Part2 : Assign certificates to LBs

-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/14976/
-----------------------------------------------------------

Review request for cloudstack, Darren Shepherd, Murali Reddy, and Sheng Yang.


Bugs: CLOUDSTACK-4821
    https://issues.apache.org/jira/browse/CLOUDSTACK-4821


Repository: cloudstack-git


Description
-------

This is the second patch for SSL termination support. This patch impletements the assginement of certificate to loadbalancers. Support for netscaler is also added. Due to the version of netscaler API in CS, I could not add support for certificate chain. This should not be a big change however. We can discuss this.


NOTE: Because I cannot diff with my local branch, this patch also includes the first patch which includes certificate management logic ... sorry 


Diffs
-----

  api/src/com/cloud/agent/api/to/LoadBalancerTO.java df2f8a8 
  api/src/com/cloud/api/commands/AssignCertToLoadBalancerCmd.java PRE-CREATION 
  api/src/com/cloud/api/commands/RemoveCertFromLoadBalancerCmd.java PRE-CREATION 
  api/src/com/cloud/event/EventTypes.java a762606 
  api/src/com/cloud/network/Network.java 49f380b 
  api/src/com/cloud/network/lb/CertService.java PRE-CREATION 
  api/src/com/cloud/network/lb/LoadBalancingRule.java 4b37782 
  api/src/com/cloud/network/lb/LoadBalancingRulesService.java 59d5c8d 
  api/src/com/cloud/network/lb/SslCert.java PRE-CREATION 
  api/src/org/apache/cloudstack/api/ApiConstants.java c75e6a0 
  api/src/org/apache/cloudstack/api/command/user/loadbalancer/CreateLoadBalancerRuleCmd.java a368436 
  api/src/org/apache/cloudstack/api/command/user/loadbalancer/DeleteSslCertCmd.java PRE-CREATION 
  api/src/org/apache/cloudstack/api/command/user/loadbalancer/ListSslCertsCmd.java PRE-CREATION 
  api/src/org/apache/cloudstack/api/command/user/loadbalancer/UploadSslCertCmd.java PRE-CREATION 
  api/src/org/apache/cloudstack/api/response/SslCertResponse.java PRE-CREATION 
  client/tomcatconf/applicationContext.xml.in 2a3520b 
  client/tomcatconf/componentContext.xml.in df5b002 
  client/tomcatconf/nonossComponentContext.xml.in 9d1da95 
  core/src/com/cloud/agent/api/routing/LoadBalancerConfigCommand.java 3a51e8a 
  engine/components-api/src/com/cloud/network/lb/LoadBalancingRulesManager.java 3e32585 
  engine/schema/src/com/cloud/network/dao/LoadBalancerCertMapDao.java PRE-CREATION 
  engine/schema/src/com/cloud/network/dao/LoadBalancerCertMapDaoImpl.java PRE-CREATION 
  engine/schema/src/com/cloud/network/dao/LoadBalancerCertMapVO.java PRE-CREATION 
  engine/schema/src/com/cloud/network/dao/LoadBalancerVO.java fee88cf 
  engine/schema/src/com/cloud/network/dao/SslCertDao.java PRE-CREATION 
  engine/schema/src/com/cloud/network/dao/SslCertDaoImpl.java PRE-CREATION 
  engine/schema/src/com/cloud/network/dao/SslCertVO.java PRE-CREATION 
  plugins/network-elements/elastic-loadbalancer/src/com/cloud/network/lb/ElasticLoadBalancerManagerImpl.java ab414de 
  plugins/network-elements/internal-loadbalancer/src/org/apache/cloudstack/network/lb/InternalLoadBalancerVMManagerImpl.java b6269eb 
  plugins/network-elements/internal-loadbalancer/test/org/apache/cloudstack/internallbelement/InternalLbElementTest.java f170fee 
  plugins/network-elements/internal-loadbalancer/test/org/apache/cloudstack/internallbvmmgr/InternalLBVMManagerTest.java 82f90fb 
  plugins/network-elements/netscaler/src/com/cloud/network/element/NetscalerElement.java d63b14f 
  plugins/network-elements/netscaler/src/com/cloud/network/resource/NetscalerResource.java fe072e1 
  server/src/com/cloud/network/ExternalLoadBalancerDeviceManagerImpl.java dd48930 
  server/src/com/cloud/network/lb/LoadBalancingRulesManagerImpl.java c685ee3 
  server/src/com/cloud/network/router/VirtualNetworkApplianceManagerImpl.java 3dfcad5 
  server/src/com/cloud/server/ManagementServerImpl.java 699f469 
  server/src/org/apache/cloudstack/network/lb/ApplicationLoadBalancerManagerImpl.java 2385edc 
  server/src/org/apache/cloudstack/network/lb/CertServiceImpl.java PRE-CREATION 
  server/test/org/apache/cloudstack/lb/ApplicationLoadBalancerTest.java 9b46e68 
  server/test/org/apache/cloudstack/network/lb/ApplicationLoadBalancerTest.java PRE-CREATION 
  server/test/org/apache/cloudstack/network/lb/CertServiceTest.java PRE-CREATION 
  server/test/resources/certs/bad_format_cert.crt PRE-CREATION 
  server/test/resources/certs/dsa_self_signed.crt PRE-CREATION 
  server/test/resources/certs/dsa_self_signed.key PRE-CREATION 
  server/test/resources/certs/expired_cert.crt PRE-CREATION 
  server/test/resources/certs/non_x509_pem.crt PRE-CREATION 
  server/test/resources/certs/root_chain.crt PRE-CREATION 
  server/test/resources/certs/rsa_ca_signed.crt PRE-CREATION 
  server/test/resources/certs/rsa_ca_signed.key PRE-CREATION 
  server/test/resources/certs/rsa_ca_signed2.crt PRE-CREATION 
  server/test/resources/certs/rsa_ca_signed2.key PRE-CREATION 
  server/test/resources/certs/rsa_random_pkey.key PRE-CREATION 
  server/test/resources/certs/rsa_self_signed.crt PRE-CREATION 
  server/test/resources/certs/rsa_self_signed.key PRE-CREATION 
  server/test/resources/certs/rsa_self_signed_with_pwd.crt PRE-CREATION 
  server/test/resources/certs/rsa_self_signed_with_pwd.key PRE-CREATION 
  setup/db/db/schema-421to430.sql aaebf96 
  utils/src/com/cloud/utils/net/NetUtils.java f590425 

Diff: https://reviews.apache.org/r/14976/diff/


Testing
-------

Testing was done using a VPX on my setup. 


Thanks,

Syed Ahmed


Re: Review Request 14976: [SSL Termination support] Part2 : Assign certificates to LBs

Posted by Syed Ahmed <sa...@cloudops.com>.
On 13-11-06 12:18 PM, Murali Reddy wrote:
> On 06/11/13 12:40 AM, "Syed Ahmed" <sa...@cloudops.com> wrote:
>
>>
>>> On Nov. 5, 2013, 9:43 a.m., Murali Reddy wrote:
>>>> api/src/com/cloud/network/lb/LoadBalancingRule.java, lines 42-43
>>>>
>>> <https://reviews.apache.org/r/14976/diff/3/?file=374393#file374393line42>
>>>>      can you please add new constructors which takes ssl cert and
>>> protocol. If we extend same constructor then its resulting unnecessary
>>> changes in internal lb, elastic lb code as well.
>> I have added an new constructor and removed all reverted all the
>> invocations in internal lb and elastic lb code. I am sorry but I am not
>> aware of the difference between different LB types in cloudstack. Is
>> there some place where I can find more info on this ?
>>
>>
>> On Nov. 5, 2013, 9:43 a.m., Syed Ahmed wrote:
>>>> - i dont see certificate details in the load balancer response
>>> obtained from listLoadBalancerRules.Does it make sense to give the
>>> certificate details if there is a cert assigined to load balancer rule?
>>>> - i dont see code to add a network offering with
>>> 'SslTermination'capability. Also list network offering, should show if
>>> LB service with SSL termination is supported by the offering.
>>>> - Please add Apache license header to all files.
>> 1) I was looking at the listLoadBalancerRules API and it does not list
>> other things bound to the lb rule like stickiness policy or health check
>> policy so I assumed that SSL certs being something like health check will
>> not be in the response. If it makes sense to add them, I will gladly do
>> so.
> Yes, you are right. I was assuming that in load balancer response, there
> should be details of associated stickiness policy etc, but looks like lb
> response need to be fixed across the board. If its not too much of a
> change please add the certificate details associated with lb rule in the
> lb rule response.
I am a but reticent on adding this with this patch as the 
createLoadBalancerResponse() in ApiResponseHelper
does not take other parameters and I don't see any use of DAO objects in 
that class. I am guessing this is a design decision
and I don't want to mess with the existing practices by polluting 
ApiResponseHelper.

I will fix all the LB responses in another patch if that is OK with you.

>>
>> 2) So what you are saying is that Ssltermination will be a service
>> offering like DNS, DHCP etc? Right now, if you see the
>> NetscalerElement.java, I have just added the SslTermination capability as
>> true. Does this suffice?
> So there is network service and network service capabilities. I meant
> 'ssltermination' to be a capability of lb service. When you create network
> offering, you can say 'LB' service and  service capability
> 'ssltermination' is enabled by the network offering. So in only networks
> created with such network offering, SSL termination functionality can be
> available.
>
> Also, there need to be service capability matched against the advertised
> capabilities of network service provider. For eg. If one creates network
> offering which says LB service with SslCapability enabled with virtual
> router providing LB service should fail because VR does not advertise the
> capabilities in VirtualRouter Network Element. Same should succeed if
> NetScaler is chosen as service provider because NetScaler element
> advertised the capability.

Right now SslTermination is a LB capability and is enabled by default in 
NetScaler.
We had decided that instead of having enable/disable for this 
functionality, we would be
billing based on the events generated when certs are assigned to the LB 
rules. This was to
simplify the implementation and not end up with cases like you mentioned 
above.

Now the problem here is if I try to assign a certificate to lets say an 
F5 loadbalancer. It should error  out
saying that Ssl termination is not supported ( yet ). One way I see that 
is to check for certificate when calling canHandleRule() in the F5's 
element.
But this has to be done for all loadbalancers. Is there a better way of 
doing this?

>>
>> 3) Done


Re: Review Request 14976: [SSL Termination support] Part2 : Assign certificates to LBs

Posted by Murali Reddy <Mu...@citrix.com>.
On 06/11/13 12:40 AM, "Syed Ahmed" <sa...@cloudops.com> wrote:

>
>
>> On Nov. 5, 2013, 9:43 a.m., Murali Reddy wrote:
>> > api/src/com/cloud/network/lb/LoadBalancingRule.java, lines 42-43
>> > 
>><https://reviews.apache.org/r/14976/diff/3/?file=374393#file374393line42>
>> >
>> >     can you please add new constructors which takes ssl cert and
>>protocol. If we extend same constructor then its resulting unnecessary
>>changes in internal lb, elastic lb code as well.
>
>I have added an new constructor and removed all reverted all the
>invocations in internal lb and elastic lb code. I am sorry but I am not
>aware of the difference between different LB types in cloudstack. Is
>there some place where I can find more info on this ?
>
>
>On Nov. 5, 2013, 9:43 a.m., Syed Ahmed wrote:
>> > - i dont see certificate details in the load balancer response
>>obtained from listLoadBalancerRules.Does it make sense to give the
>>certificate details if there is a cert assigined to load balancer rule?
>> > 
>> > - i dont see code to add a network offering with
>>'SslTermination'capability. Also list network offering, should show if
>>LB service with SSL termination is supported by the offering.
>> > 
>> > - Please add Apache license header to all files.
>
>1) I was looking at the listLoadBalancerRules API and it does not list
>other things bound to the lb rule like stickiness policy or health check
>policy so I assumed that SSL certs being something like health check will
>not be in the response. If it makes sense to add them, I will gladly do
>so.

Yes, you are right. I was assuming that in load balancer response, there
should be details of associated stickiness policy etc, but looks like lb
response need to be fixed across the board. If its not too much of a
change please add the certificate details associated with lb rule in the
lb rule response.

> 
>
>2) So what you are saying is that Ssltermination will be a service
>offering like DNS, DHCP etc? Right now, if you see the
>NetscalerElement.java, I have just added the SslTermination capability as
>true. Does this suffice?

So there is network service and network service capabilities. I meant
'ssltermination' to be a capability of lb service. When you create network
offering, you can say 'LB' service and  service capability
'ssltermination' is enabled by the network offering. So in only networks
created with such network offering, SSL termination functionality can be
available.

Also, there need to be service capability matched against the advertised
capabilities of network service provider. For eg. If one creates network
offering which says LB service with SslCapability enabled with virtual
router providing LB service should fail because VR does not advertise the
capabilities in VirtualRouter Network Element. Same should succeed if
NetScaler is chosen as service provider because NetScaler element
advertised the capability.

> 
>
>3) Done


Re: Review Request 14976: [SSL Termination support] Part2 : Assign certificates to LBs

Posted by Syed Ahmed <sa...@cloudops.com>.

> On Nov. 5, 2013, 9:43 a.m., Murali Reddy wrote:
> > api/src/com/cloud/network/lb/LoadBalancingRule.java, lines 42-43
> > <https://reviews.apache.org/r/14976/diff/3/?file=374393#file374393line42>
> >
> >     can you please add new constructors which takes ssl cert and protocol. If we extend same constructor then its resulting unnecessary changes in internal lb, elastic lb code as well.

I have added an new constructor and removed all reverted all the invocations in internal lb and elastic lb code. I am sorry but I am not aware of the difference between different LB types in cloudstack. Is there some place where I can find more info on this ?


On Nov. 5, 2013, 9:43 a.m., Syed Ahmed wrote:
> > - i dont see certificate details in the load balancer response obtained from listLoadBalancerRules.Does it make sense to give the certificate details if there is a cert assigined to load balancer rule?
> > 
> > - i dont see code to add a network offering with 'SslTermination'capability. Also list network offering, should show if LB service with SSL termination is supported by the offering. 
> > 
> > - Please add Apache license header to all files.

1) I was looking at the listLoadBalancerRules API and it does not list other things bound to the lb rule like stickiness policy or health check policy so I assumed that SSL certs being something like health check will not be in the response. If it makes sense to add them, I will gladly do so. 

2) So what you are saying is that Ssltermination will be a service offering like DNS, DHCP etc? Right now, if you see the NetscalerElement.java, I have just added the SslTermination capability as true. Does this suffice? 

3) Done


- Syed


-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/14976/#review28176
-----------------------------------------------------------


On Oct. 30, 2013, 8:34 p.m., Syed Ahmed wrote:
> 
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> https://reviews.apache.org/r/14976/
> -----------------------------------------------------------
> 
> (Updated Oct. 30, 2013, 8:34 p.m.)
> 
> 
> Review request for cloudstack, Darren Shepherd, Murali Reddy, and Sheng Yang.
> 
> 
> Bugs: CLOUDSTACK-4821
>     https://issues.apache.org/jira/browse/CLOUDSTACK-4821
> 
> 
> Repository: cloudstack-git
> 
> 
> Description
> -------
> 
> This is the second patch for SSL termination support. This patch impletements the assginement of certificate to loadbalancers. Support for netscaler is also added. Due to the version of netscaler API in CS, I could not add support for certificate chain. This should not be a big change however. We can discuss this.
> 
> 
> NOTE: Because I cannot diff with my local branch, this patch also includes the first patch which includes certificate management logic ... sorry 
> 
> 
> Diffs
> -----
> 
>   api/src/com/cloud/agent/api/to/LoadBalancerTO.java df2f8a8 
>   api/src/com/cloud/event/EventTypes.java a762606 
>   api/src/com/cloud/network/Network.java 49f380b 
>   api/src/com/cloud/network/lb/CertService.java PRE-CREATION 
>   api/src/com/cloud/network/lb/LoadBalancingRule.java 4b37782 
>   api/src/com/cloud/network/lb/LoadBalancingRulesService.java 59d5c8d 
>   api/src/com/cloud/network/lb/SslCert.java PRE-CREATION 
>   api/src/org/apache/cloudstack/api/ApiConstants.java c75e6a0 
>   api/src/org/apache/cloudstack/api/command/user/loadbalancer/AssignCertToLoadBalancerCmd.java PRE-CREATION 
>   api/src/org/apache/cloudstack/api/command/user/loadbalancer/CreateLoadBalancerRuleCmd.java a368436 
>   api/src/org/apache/cloudstack/api/command/user/loadbalancer/DeleteSslCertCmd.java PRE-CREATION 
>   api/src/org/apache/cloudstack/api/command/user/loadbalancer/ListSslCertsCmd.java PRE-CREATION 
>   api/src/org/apache/cloudstack/api/command/user/loadbalancer/RemoveCertFromLoadBalancerCmd.java PRE-CREATION 
>   api/src/org/apache/cloudstack/api/command/user/loadbalancer/UploadSslCertCmd.java PRE-CREATION 
>   api/src/org/apache/cloudstack/api/response/SslCertResponse.java PRE-CREATION 
>   client/tomcatconf/applicationContext.xml.in 2a3520b 
>   client/tomcatconf/nonossComponentContext.xml.in 9d1da95 
>   core/src/com/cloud/agent/api/routing/LoadBalancerConfigCommand.java 3a51e8a 
>   engine/components-api/src/com/cloud/network/lb/LoadBalancingRulesManager.java 3e32585 
>   engine/schema/src/com/cloud/network/dao/LoadBalancerCertMapDao.java PRE-CREATION 
>   engine/schema/src/com/cloud/network/dao/LoadBalancerCertMapDaoImpl.java PRE-CREATION 
>   engine/schema/src/com/cloud/network/dao/LoadBalancerCertMapVO.java PRE-CREATION 
>   engine/schema/src/com/cloud/network/dao/LoadBalancerVO.java fee88cf 
>   engine/schema/src/com/cloud/network/dao/SslCertDao.java PRE-CREATION 
>   engine/schema/src/com/cloud/network/dao/SslCertDaoImpl.java PRE-CREATION 
>   engine/schema/src/com/cloud/network/dao/SslCertVO.java PRE-CREATION 
>   plugins/network-elements/elastic-loadbalancer/src/com/cloud/network/lb/ElasticLoadBalancerManagerImpl.java ab414de 
>   plugins/network-elements/internal-loadbalancer/src/org/apache/cloudstack/network/lb/InternalLoadBalancerVMManagerImpl.java b6269eb 
>   plugins/network-elements/internal-loadbalancer/test/org/apache/cloudstack/internallbelement/InternalLbElementTest.java f170fee 
>   plugins/network-elements/internal-loadbalancer/test/org/apache/cloudstack/internallbvmmgr/InternalLBVMManagerTest.java 82f90fb 
>   plugins/network-elements/netscaler/src/com/cloud/network/element/NetscalerElement.java d63b14f 
>   plugins/network-elements/netscaler/src/com/cloud/network/resource/NetscalerResource.java fe072e1 
>   server/src/com/cloud/network/ExternalLoadBalancerDeviceManagerImpl.java dd48930 
>   server/src/com/cloud/network/lb/LoadBalancingRulesManagerImpl.java c685ee3 
>   server/src/com/cloud/network/router/VirtualNetworkApplianceManagerImpl.java 3dfcad5 
>   server/src/com/cloud/server/ManagementServerImpl.java 699f469 
>   server/src/org/apache/cloudstack/network/lb/ApplicationLoadBalancerManagerImpl.java 2385edc 
>   server/src/org/apache/cloudstack/network/lb/CertServiceImpl.java PRE-CREATION 
>   server/test/org/apache/cloudstack/lb/ApplicationLoadBalancerTest.java 9b46e68 
>   server/test/org/apache/cloudstack/network/lb/ApplicationLoadBalancerTest.java PRE-CREATION 
>   server/test/org/apache/cloudstack/network/lb/CertServiceTest.java PRE-CREATION 
>   server/test/resources/certs/bad_format_cert.crt PRE-CREATION 
>   server/test/resources/certs/dsa_self_signed.crt PRE-CREATION 
>   server/test/resources/certs/dsa_self_signed.key PRE-CREATION 
>   server/test/resources/certs/expired_cert.crt PRE-CREATION 
>   server/test/resources/certs/non_x509_pem.crt PRE-CREATION 
>   server/test/resources/certs/root_chain.crt PRE-CREATION 
>   server/test/resources/certs/rsa_ca_signed.crt PRE-CREATION 
>   server/test/resources/certs/rsa_ca_signed.key PRE-CREATION 
>   server/test/resources/certs/rsa_ca_signed2.crt PRE-CREATION 
>   server/test/resources/certs/rsa_ca_signed2.key PRE-CREATION 
>   server/test/resources/certs/rsa_random_pkey.key PRE-CREATION 
>   server/test/resources/certs/rsa_self_signed.crt PRE-CREATION 
>   server/test/resources/certs/rsa_self_signed.key PRE-CREATION 
>   server/test/resources/certs/rsa_self_signed_with_pwd.crt PRE-CREATION 
>   server/test/resources/certs/rsa_self_signed_with_pwd.key PRE-CREATION 
>   setup/db/db/schema-421to430.sql aaebf96 
>   utils/src/com/cloud/utils/net/NetUtils.java f590425 
> 
> Diff: https://reviews.apache.org/r/14976/diff/
> 
> 
> Testing
> -------
> 
> Testing was done using a VPX on my setup. 
> 
> 
> Thanks,
> 
> Syed Ahmed
> 
>


Re: Review Request 14976: [SSL Termination support] Part2 : Assign certificates to LBs

Posted by Murali Reddy <mu...@gmail.com>.
-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/14976/#review28176
-----------------------------------------------------------



api/src/com/cloud/event/EventTypes.java
<https://reviews.apache.org/r/14976/#comment54828>

    please add events for certificate upload and delete events as well



api/src/com/cloud/network/lb/CertService.java
<https://reviews.apache.org/r/14976/#comment54829>

    Should the 'validate' method be internal to certificate service?



api/src/com/cloud/network/lb/LoadBalancingRule.java
<https://reviews.apache.org/r/14976/#comment54830>

    can you please add new constructors which takes ssl cert and protocol. If we extend same constructor then its resulting unnecessary changes in internal lb, elastic lb code as well.



server/src/com/cloud/network/lb/LoadBalancingRulesManagerImpl.java
<https://reviews.apache.org/r/14976/#comment54818>

    need a better error message. its actually mismatch in owners of lb rule, certificate and caller



server/src/com/cloud/network/lb/LoadBalancingRulesManagerImpl.java
<https://reviews.apache.org/r/14976/#comment54833>

    remove the comments if not required


- i dont see certificate details in the load balancer response obtained from listLoadBalancerRules.Does it make sense to give the certificate details if there is a cert assigined to load balancer rule?

- i dont see code to add a network offering with 'SslTermination'capability. Also list network offering, should show if LB service with SSL termination is supported by the offering. 

- Please add Apache license header to all files.

- Murali Reddy


On Oct. 30, 2013, 8:34 p.m., Syed Ahmed wrote:
> 
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> https://reviews.apache.org/r/14976/
> -----------------------------------------------------------
> 
> (Updated Oct. 30, 2013, 8:34 p.m.)
> 
> 
> Review request for cloudstack, Darren Shepherd, Murali Reddy, and Sheng Yang.
> 
> 
> Bugs: CLOUDSTACK-4821
>     https://issues.apache.org/jira/browse/CLOUDSTACK-4821
> 
> 
> Repository: cloudstack-git
> 
> 
> Description
> -------
> 
> This is the second patch for SSL termination support. This patch impletements the assginement of certificate to loadbalancers. Support for netscaler is also added. Due to the version of netscaler API in CS, I could not add support for certificate chain. This should not be a big change however. We can discuss this.
> 
> 
> NOTE: Because I cannot diff with my local branch, this patch also includes the first patch which includes certificate management logic ... sorry 
> 
> 
> Diffs
> -----
> 
>   api/src/com/cloud/agent/api/to/LoadBalancerTO.java df2f8a8 
>   api/src/com/cloud/event/EventTypes.java a762606 
>   api/src/com/cloud/network/Network.java 49f380b 
>   api/src/com/cloud/network/lb/CertService.java PRE-CREATION 
>   api/src/com/cloud/network/lb/LoadBalancingRule.java 4b37782 
>   api/src/com/cloud/network/lb/LoadBalancingRulesService.java 59d5c8d 
>   api/src/com/cloud/network/lb/SslCert.java PRE-CREATION 
>   api/src/org/apache/cloudstack/api/ApiConstants.java c75e6a0 
>   api/src/org/apache/cloudstack/api/command/user/loadbalancer/AssignCertToLoadBalancerCmd.java PRE-CREATION 
>   api/src/org/apache/cloudstack/api/command/user/loadbalancer/CreateLoadBalancerRuleCmd.java a368436 
>   api/src/org/apache/cloudstack/api/command/user/loadbalancer/DeleteSslCertCmd.java PRE-CREATION 
>   api/src/org/apache/cloudstack/api/command/user/loadbalancer/ListSslCertsCmd.java PRE-CREATION 
>   api/src/org/apache/cloudstack/api/command/user/loadbalancer/RemoveCertFromLoadBalancerCmd.java PRE-CREATION 
>   api/src/org/apache/cloudstack/api/command/user/loadbalancer/UploadSslCertCmd.java PRE-CREATION 
>   api/src/org/apache/cloudstack/api/response/SslCertResponse.java PRE-CREATION 
>   client/tomcatconf/applicationContext.xml.in 2a3520b 
>   client/tomcatconf/nonossComponentContext.xml.in 9d1da95 
>   core/src/com/cloud/agent/api/routing/LoadBalancerConfigCommand.java 3a51e8a 
>   engine/components-api/src/com/cloud/network/lb/LoadBalancingRulesManager.java 3e32585 
>   engine/schema/src/com/cloud/network/dao/LoadBalancerCertMapDao.java PRE-CREATION 
>   engine/schema/src/com/cloud/network/dao/LoadBalancerCertMapDaoImpl.java PRE-CREATION 
>   engine/schema/src/com/cloud/network/dao/LoadBalancerCertMapVO.java PRE-CREATION 
>   engine/schema/src/com/cloud/network/dao/LoadBalancerVO.java fee88cf 
>   engine/schema/src/com/cloud/network/dao/SslCertDao.java PRE-CREATION 
>   engine/schema/src/com/cloud/network/dao/SslCertDaoImpl.java PRE-CREATION 
>   engine/schema/src/com/cloud/network/dao/SslCertVO.java PRE-CREATION 
>   plugins/network-elements/elastic-loadbalancer/src/com/cloud/network/lb/ElasticLoadBalancerManagerImpl.java ab414de 
>   plugins/network-elements/internal-loadbalancer/src/org/apache/cloudstack/network/lb/InternalLoadBalancerVMManagerImpl.java b6269eb 
>   plugins/network-elements/internal-loadbalancer/test/org/apache/cloudstack/internallbelement/InternalLbElementTest.java f170fee 
>   plugins/network-elements/internal-loadbalancer/test/org/apache/cloudstack/internallbvmmgr/InternalLBVMManagerTest.java 82f90fb 
>   plugins/network-elements/netscaler/src/com/cloud/network/element/NetscalerElement.java d63b14f 
>   plugins/network-elements/netscaler/src/com/cloud/network/resource/NetscalerResource.java fe072e1 
>   server/src/com/cloud/network/ExternalLoadBalancerDeviceManagerImpl.java dd48930 
>   server/src/com/cloud/network/lb/LoadBalancingRulesManagerImpl.java c685ee3 
>   server/src/com/cloud/network/router/VirtualNetworkApplianceManagerImpl.java 3dfcad5 
>   server/src/com/cloud/server/ManagementServerImpl.java 699f469 
>   server/src/org/apache/cloudstack/network/lb/ApplicationLoadBalancerManagerImpl.java 2385edc 
>   server/src/org/apache/cloudstack/network/lb/CertServiceImpl.java PRE-CREATION 
>   server/test/org/apache/cloudstack/lb/ApplicationLoadBalancerTest.java 9b46e68 
>   server/test/org/apache/cloudstack/network/lb/ApplicationLoadBalancerTest.java PRE-CREATION 
>   server/test/org/apache/cloudstack/network/lb/CertServiceTest.java PRE-CREATION 
>   server/test/resources/certs/bad_format_cert.crt PRE-CREATION 
>   server/test/resources/certs/dsa_self_signed.crt PRE-CREATION 
>   server/test/resources/certs/dsa_self_signed.key PRE-CREATION 
>   server/test/resources/certs/expired_cert.crt PRE-CREATION 
>   server/test/resources/certs/non_x509_pem.crt PRE-CREATION 
>   server/test/resources/certs/root_chain.crt PRE-CREATION 
>   server/test/resources/certs/rsa_ca_signed.crt PRE-CREATION 
>   server/test/resources/certs/rsa_ca_signed.key PRE-CREATION 
>   server/test/resources/certs/rsa_ca_signed2.crt PRE-CREATION 
>   server/test/resources/certs/rsa_ca_signed2.key PRE-CREATION 
>   server/test/resources/certs/rsa_random_pkey.key PRE-CREATION 
>   server/test/resources/certs/rsa_self_signed.crt PRE-CREATION 
>   server/test/resources/certs/rsa_self_signed.key PRE-CREATION 
>   server/test/resources/certs/rsa_self_signed_with_pwd.crt PRE-CREATION 
>   server/test/resources/certs/rsa_self_signed_with_pwd.key PRE-CREATION 
>   setup/db/db/schema-421to430.sql aaebf96 
>   utils/src/com/cloud/utils/net/NetUtils.java f590425 
> 
> Diff: https://reviews.apache.org/r/14976/diff/
> 
> 
> Testing
> -------
> 
> Testing was done using a VPX on my setup. 
> 
> 
> Thanks,
> 
> Syed Ahmed
> 
>


Re: Review Request 14976: [SSL Termination support] Part2 : Assign certificates to LBs

Posted by Murali Reddy <mu...@gmail.com>.
-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/14976/#review28273
-----------------------------------------------------------


patch does not apply on master. please rebase with latest master and update the patch

- Murali Reddy


On Nov. 6, 2013, 12:54 a.m., Syed Ahmed wrote:
> 
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> https://reviews.apache.org/r/14976/
> -----------------------------------------------------------
> 
> (Updated Nov. 6, 2013, 12:54 a.m.)
> 
> 
> Review request for cloudstack, Darren Shepherd, Murali Reddy, and Sheng Yang.
> 
> 
> Bugs: CLOUDSTACK-4821
>     https://issues.apache.org/jira/browse/CLOUDSTACK-4821
> 
> 
> Repository: cloudstack-git
> 
> 
> Description
> -------
> 
> This is the second patch for SSL termination support. This patch impletements the assginement of certificate to loadbalancers. Support for netscaler is also added. Due to the version of netscaler API in CS, I could not add support for certificate chain. This should not be a big change however. We can discuss this.
> 
> 
> NOTE: Because I cannot diff with my local branch, this patch also includes the first patch which includes certificate management logic ... sorry 
> 
> 
> Diffs
> -----
> 
>   api/src/com/cloud/agent/api/to/LoadBalancerTO.java df2f8a8 
>   api/src/com/cloud/event/EventTypes.java a762606 
>   api/src/com/cloud/network/Network.java 49f380b 
>   api/src/com/cloud/network/lb/CertService.java PRE-CREATION 
>   api/src/com/cloud/network/lb/LoadBalancingRule.java 4b37782 
>   api/src/com/cloud/network/lb/LoadBalancingRulesService.java 59d5c8d 
>   api/src/com/cloud/network/lb/SslCert.java PRE-CREATION 
>   api/src/org/apache/cloudstack/api/ApiConstants.java c75e6a0 
>   api/src/org/apache/cloudstack/api/command/user/loadbalancer/AssignCertToLoadBalancerCmd.java PRE-CREATION 
>   api/src/org/apache/cloudstack/api/command/user/loadbalancer/CreateLoadBalancerRuleCmd.java a368436 
>   api/src/org/apache/cloudstack/api/command/user/loadbalancer/DeleteSslCertCmd.java PRE-CREATION 
>   api/src/org/apache/cloudstack/api/command/user/loadbalancer/ListSslCertsCmd.java PRE-CREATION 
>   api/src/org/apache/cloudstack/api/command/user/loadbalancer/RemoveCertFromLoadBalancerCmd.java PRE-CREATION 
>   api/src/org/apache/cloudstack/api/command/user/loadbalancer/UploadSslCertCmd.java PRE-CREATION 
>   api/src/org/apache/cloudstack/api/response/SslCertResponse.java PRE-CREATION 
>   client/tomcatconf/applicationContext.xml.in 2a3520b 
>   client/tomcatconf/nonossComponentContext.xml.in 9d1da95 
>   core/src/com/cloud/agent/api/routing/LoadBalancerConfigCommand.java 3a51e8a 
>   engine/components-api/src/com/cloud/network/lb/LoadBalancingRulesManager.java 3e32585 
>   engine/schema/src/com/cloud/network/dao/LoadBalancerCertMapDao.java PRE-CREATION 
>   engine/schema/src/com/cloud/network/dao/LoadBalancerCertMapDaoImpl.java PRE-CREATION 
>   engine/schema/src/com/cloud/network/dao/LoadBalancerCertMapVO.java PRE-CREATION 
>   engine/schema/src/com/cloud/network/dao/LoadBalancerVO.java fee88cf 
>   engine/schema/src/com/cloud/network/dao/SslCertDao.java PRE-CREATION 
>   engine/schema/src/com/cloud/network/dao/SslCertDaoImpl.java PRE-CREATION 
>   engine/schema/src/com/cloud/network/dao/SslCertVO.java PRE-CREATION 
>   plugins/network-elements/elastic-loadbalancer/src/com/cloud/network/lb/ElasticLoadBalancerManagerImpl.java ab414de 
>   plugins/network-elements/internal-loadbalancer/src/org/apache/cloudstack/network/lb/InternalLoadBalancerVMManagerImpl.java b6269eb 
>   plugins/network-elements/internal-loadbalancer/test/org/apache/cloudstack/internallbvmmgr/InternalLBVMManagerTest.java 82f90fb 
>   plugins/network-elements/netscaler/src/com/cloud/network/element/NetscalerElement.java d63b14f 
>   plugins/network-elements/netscaler/src/com/cloud/network/resource/NetscalerResource.java fe072e1 
>   server/src/com/cloud/network/ExternalLoadBalancerDeviceManagerImpl.java dd48930 
>   server/src/com/cloud/network/lb/LoadBalancingRulesManagerImpl.java c685ee3 
>   server/src/com/cloud/network/router/VirtualNetworkApplianceManagerImpl.java 3dfcad5 
>   server/src/com/cloud/server/ManagementServerImpl.java 699f469 
>   server/src/org/apache/cloudstack/network/lb/ApplicationLoadBalancerManagerImpl.java 2385edc 
>   server/src/org/apache/cloudstack/network/lb/CertServiceImpl.java PRE-CREATION 
>   server/test/org/apache/cloudstack/lb/ApplicationLoadBalancerTest.java 9b46e68 
>   server/test/org/apache/cloudstack/network/lb/ApplicationLoadBalancerTest.java PRE-CREATION 
>   server/test/org/apache/cloudstack/network/lb/CertServiceTest.java PRE-CREATION 
>   server/test/resources/certs/bad_format_cert.crt PRE-CREATION 
>   server/test/resources/certs/dsa_self_signed.crt PRE-CREATION 
>   server/test/resources/certs/dsa_self_signed.key PRE-CREATION 
>   server/test/resources/certs/expired_cert.crt PRE-CREATION 
>   server/test/resources/certs/non_x509_pem.crt PRE-CREATION 
>   server/test/resources/certs/root_chain.crt PRE-CREATION 
>   server/test/resources/certs/rsa_ca_signed.crt PRE-CREATION 
>   server/test/resources/certs/rsa_ca_signed.key PRE-CREATION 
>   server/test/resources/certs/rsa_ca_signed2.crt PRE-CREATION 
>   server/test/resources/certs/rsa_ca_signed2.key PRE-CREATION 
>   server/test/resources/certs/rsa_random_pkey.key PRE-CREATION 
>   server/test/resources/certs/rsa_self_signed.crt PRE-CREATION 
>   server/test/resources/certs/rsa_self_signed.key PRE-CREATION 
>   server/test/resources/certs/rsa_self_signed_with_pwd.crt PRE-CREATION 
>   server/test/resources/certs/rsa_self_signed_with_pwd.key PRE-CREATION 
>   setup/db/db/schema-421to430.sql aaebf96 
>   utils/src/com/cloud/utils/net/NetUtils.java f590425 
> 
> Diff: https://reviews.apache.org/r/14976/diff/
> 
> 
> Testing
> -------
> 
> Testing was done using a VPX on my setup. 
> 
> 
> Thanks,
> 
> Syed Ahmed
> 
>


Re: Review Request 14976: [SSL Termination support] Part2 : Assign certificates to LBs

Posted by Murali Reddy <mu...@gmail.com>.
-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/14976/#review28533
-----------------------------------------------------------

Ship it!


commit 0076307863e9155273d9e4c14282de429388c9e9
Author: Syed <sa...@cloudops.com>
Date:   Wed Nov 6 15:08:42 2013 -0500

- Murali Reddy


On Nov. 6, 2013, 8:15 p.m., Syed Ahmed wrote:
> 
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> https://reviews.apache.org/r/14976/
> -----------------------------------------------------------
> 
> (Updated Nov. 6, 2013, 8:15 p.m.)
> 
> 
> Review request for cloudstack, Darren Shepherd, Murali Reddy, and Sheng Yang.
> 
> 
> Bugs: CLOUDSTACK-4821
>     https://issues.apache.org/jira/browse/CLOUDSTACK-4821
> 
> 
> Repository: cloudstack-git
> 
> 
> Description
> -------
> 
> This is the second patch for SSL termination support. This patch impletements the assginement of certificate to loadbalancers. Support for netscaler is also added. Due to the version of netscaler API in CS, I could not add support for certificate chain. This should not be a big change however. We can discuss this.
> 
> 
> NOTE: Because I cannot diff with my local branch, this patch also includes the first patch which includes certificate management logic ... sorry 
> 
> 
> Diffs
> -----
> 
>   CHANGES 054e7b0 
>   api/src/com/cloud/agent/api/to/LoadBalancerTO.java df2f8a8 
>   api/src/com/cloud/event/EventTypes.java d9f80eb 
>   api/src/com/cloud/network/Network.java 318ac19 
>   api/src/com/cloud/network/lb/CertService.java PRE-CREATION 
>   api/src/com/cloud/network/lb/LoadBalancingRule.java 4b37782 
>   api/src/com/cloud/network/lb/LoadBalancingRulesService.java 59d5c8d 
>   api/src/com/cloud/network/lb/SslCert.java PRE-CREATION 
>   api/src/org/apache/cloudstack/api/ApiConstants.java 3b2bc67 
>   api/src/org/apache/cloudstack/api/command/user/loadbalancer/AssignCertToLoadBalancerCmd.java PRE-CREATION 
>   api/src/org/apache/cloudstack/api/command/user/loadbalancer/CreateLoadBalancerRuleCmd.java a368436 
>   api/src/org/apache/cloudstack/api/command/user/loadbalancer/DeleteSslCertCmd.java PRE-CREATION 
>   api/src/org/apache/cloudstack/api/command/user/loadbalancer/ListSslCertsCmd.java PRE-CREATION 
>   api/src/org/apache/cloudstack/api/command/user/loadbalancer/RemoveCertFromLoadBalancerCmd.java PRE-CREATION 
>   api/src/org/apache/cloudstack/api/command/user/loadbalancer/UploadSslCertCmd.java PRE-CREATION 
>   api/src/org/apache/cloudstack/api/response/SslCertResponse.java PRE-CREATION 
>   client/tomcatconf/commands.properties.in 087d8b9 
>   core/src/com/cloud/agent/api/routing/LoadBalancerConfigCommand.java 3a51e8a 
>   engine/components-api/src/com/cloud/network/lb/LoadBalancingRulesManager.java 3e32585 
>   engine/schema/resources/META-INF/cloudstack/core/spring-engine-schema-core-daos-context.xml 98ef018 
>   engine/schema/src/com/cloud/network/dao/LoadBalancerCertMapDao.java PRE-CREATION 
>   engine/schema/src/com/cloud/network/dao/LoadBalancerCertMapDaoImpl.java PRE-CREATION 
>   engine/schema/src/com/cloud/network/dao/LoadBalancerCertMapVO.java PRE-CREATION 
>   engine/schema/src/com/cloud/network/dao/LoadBalancerVO.java fee88cf 
>   engine/schema/src/com/cloud/network/dao/SslCertDao.java PRE-CREATION 
>   engine/schema/src/com/cloud/network/dao/SslCertDaoImpl.java PRE-CREATION 
>   engine/schema/src/com/cloud/network/dao/SslCertVO.java PRE-CREATION 
>   plugins/network-elements/elastic-loadbalancer/src/com/cloud/network/lb/ElasticLoadBalancerManagerImpl.java 5c6f2e7 
>   plugins/network-elements/internal-loadbalancer/src/org/apache/cloudstack/network/lb/InternalLoadBalancerVMManagerImpl.java b6269eb 
>   plugins/network-elements/internal-loadbalancer/test/org/apache/cloudstack/internallbvmmgr/InternalLBVMManagerTest.java 82f90fb 
>   plugins/network-elements/netscaler/src/com/cloud/network/element/NetscalerElement.java 8101864 
>   plugins/network-elements/netscaler/src/com/cloud/network/resource/NetscalerResource.java fe072e1 
>   server/resources/META-INF/cloudstack/core/spring-server-core-managers-context.xml 5e37908 
>   server/src/com/cloud/network/ExternalLoadBalancerDeviceManagerImpl.java 6ca40c0 
>   server/src/com/cloud/network/lb/LoadBalancingRulesManagerImpl.java 0d43478 
>   server/src/com/cloud/network/router/VirtualNetworkApplianceManagerImpl.java 9b35a4b 
>   server/src/com/cloud/server/ManagementServerImpl.java 79b20d0 
>   server/src/org/apache/cloudstack/network/lb/ApplicationLoadBalancerManagerImpl.java b7cd231 
>   server/src/org/apache/cloudstack/network/lb/CertServiceImpl.java PRE-CREATION 
>   server/test/org/apache/cloudstack/lb/ApplicationLoadBalancerTest.java 9b46e68 
>   server/test/org/apache/cloudstack/network/lb/ApplicationLoadBalancerTest.java PRE-CREATION 
>   server/test/org/apache/cloudstack/network/lb/CertServiceTest.java PRE-CREATION 
>   server/test/resources/certs/bad_format_cert.crt PRE-CREATION 
>   server/test/resources/certs/dsa_self_signed.crt PRE-CREATION 
>   server/test/resources/certs/dsa_self_signed.key PRE-CREATION 
>   server/test/resources/certs/expired_cert.crt PRE-CREATION 
>   server/test/resources/certs/non_x509_pem.crt PRE-CREATION 
>   server/test/resources/certs/root_chain.crt PRE-CREATION 
>   server/test/resources/certs/rsa_ca_signed.crt PRE-CREATION 
>   server/test/resources/certs/rsa_ca_signed.key PRE-CREATION 
>   server/test/resources/certs/rsa_ca_signed2.crt PRE-CREATION 
>   server/test/resources/certs/rsa_ca_signed2.key PRE-CREATION 
>   server/test/resources/certs/rsa_random_pkey.key PRE-CREATION 
>   server/test/resources/certs/rsa_self_signed.crt PRE-CREATION 
>   server/test/resources/certs/rsa_self_signed.key PRE-CREATION 
>   server/test/resources/certs/rsa_self_signed_with_pwd.crt PRE-CREATION 
>   server/test/resources/certs/rsa_self_signed_with_pwd.key PRE-CREATION 
>   setup/db/db/schema-421to430.sql 26e4abf 
>   utils/src/com/cloud/utils/net/NetUtils.java f590425 
> 
> Diff: https://reviews.apache.org/r/14976/diff/
> 
> 
> Testing
> -------
> 
> Testing was done using a VPX on my setup. 
> 
> 
> Thanks,
> 
> Syed Ahmed
> 
>


Re: Review Request 14976: [SSL Termination support] Part2 : Assign certificates to LBs

Posted by Syed Ahmed <sa...@cloudops.com>.
-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/14976/
-----------------------------------------------------------

(Updated Nov. 6, 2013, 8:15 p.m.)


Review request for cloudstack, Darren Shepherd, Murali Reddy, and Sheng Yang.


Changes
-------

Final patch with the master. 


Bugs: CLOUDSTACK-4821
    https://issues.apache.org/jira/browse/CLOUDSTACK-4821


Repository: cloudstack-git


Description
-------

This is the second patch for SSL termination support. This patch impletements the assginement of certificate to loadbalancers. Support for netscaler is also added. Due to the version of netscaler API in CS, I could not add support for certificate chain. This should not be a big change however. We can discuss this.


NOTE: Because I cannot diff with my local branch, this patch also includes the first patch which includes certificate management logic ... sorry 


Diffs (updated)
-----

  CHANGES 054e7b0 
  api/src/com/cloud/agent/api/to/LoadBalancerTO.java df2f8a8 
  api/src/com/cloud/event/EventTypes.java d9f80eb 
  api/src/com/cloud/network/Network.java 318ac19 
  api/src/com/cloud/network/lb/CertService.java PRE-CREATION 
  api/src/com/cloud/network/lb/LoadBalancingRule.java 4b37782 
  api/src/com/cloud/network/lb/LoadBalancingRulesService.java 59d5c8d 
  api/src/com/cloud/network/lb/SslCert.java PRE-CREATION 
  api/src/org/apache/cloudstack/api/ApiConstants.java 3b2bc67 
  api/src/org/apache/cloudstack/api/command/user/loadbalancer/AssignCertToLoadBalancerCmd.java PRE-CREATION 
  api/src/org/apache/cloudstack/api/command/user/loadbalancer/CreateLoadBalancerRuleCmd.java a368436 
  api/src/org/apache/cloudstack/api/command/user/loadbalancer/DeleteSslCertCmd.java PRE-CREATION 
  api/src/org/apache/cloudstack/api/command/user/loadbalancer/ListSslCertsCmd.java PRE-CREATION 
  api/src/org/apache/cloudstack/api/command/user/loadbalancer/RemoveCertFromLoadBalancerCmd.java PRE-CREATION 
  api/src/org/apache/cloudstack/api/command/user/loadbalancer/UploadSslCertCmd.java PRE-CREATION 
  api/src/org/apache/cloudstack/api/response/SslCertResponse.java PRE-CREATION 
  client/tomcatconf/commands.properties.in 087d8b9 
  core/src/com/cloud/agent/api/routing/LoadBalancerConfigCommand.java 3a51e8a 
  engine/components-api/src/com/cloud/network/lb/LoadBalancingRulesManager.java 3e32585 
  engine/schema/resources/META-INF/cloudstack/core/spring-engine-schema-core-daos-context.xml 98ef018 
  engine/schema/src/com/cloud/network/dao/LoadBalancerCertMapDao.java PRE-CREATION 
  engine/schema/src/com/cloud/network/dao/LoadBalancerCertMapDaoImpl.java PRE-CREATION 
  engine/schema/src/com/cloud/network/dao/LoadBalancerCertMapVO.java PRE-CREATION 
  engine/schema/src/com/cloud/network/dao/LoadBalancerVO.java fee88cf 
  engine/schema/src/com/cloud/network/dao/SslCertDao.java PRE-CREATION 
  engine/schema/src/com/cloud/network/dao/SslCertDaoImpl.java PRE-CREATION 
  engine/schema/src/com/cloud/network/dao/SslCertVO.java PRE-CREATION 
  plugins/network-elements/elastic-loadbalancer/src/com/cloud/network/lb/ElasticLoadBalancerManagerImpl.java 5c6f2e7 
  plugins/network-elements/internal-loadbalancer/src/org/apache/cloudstack/network/lb/InternalLoadBalancerVMManagerImpl.java b6269eb 
  plugins/network-elements/internal-loadbalancer/test/org/apache/cloudstack/internallbvmmgr/InternalLBVMManagerTest.java 82f90fb 
  plugins/network-elements/netscaler/src/com/cloud/network/element/NetscalerElement.java 8101864 
  plugins/network-elements/netscaler/src/com/cloud/network/resource/NetscalerResource.java fe072e1 
  server/resources/META-INF/cloudstack/core/spring-server-core-managers-context.xml 5e37908 
  server/src/com/cloud/network/ExternalLoadBalancerDeviceManagerImpl.java 6ca40c0 
  server/src/com/cloud/network/lb/LoadBalancingRulesManagerImpl.java 0d43478 
  server/src/com/cloud/network/router/VirtualNetworkApplianceManagerImpl.java 9b35a4b 
  server/src/com/cloud/server/ManagementServerImpl.java 79b20d0 
  server/src/org/apache/cloudstack/network/lb/ApplicationLoadBalancerManagerImpl.java b7cd231 
  server/src/org/apache/cloudstack/network/lb/CertServiceImpl.java PRE-CREATION 
  server/test/org/apache/cloudstack/lb/ApplicationLoadBalancerTest.java 9b46e68 
  server/test/org/apache/cloudstack/network/lb/ApplicationLoadBalancerTest.java PRE-CREATION 
  server/test/org/apache/cloudstack/network/lb/CertServiceTest.java PRE-CREATION 
  server/test/resources/certs/bad_format_cert.crt PRE-CREATION 
  server/test/resources/certs/dsa_self_signed.crt PRE-CREATION 
  server/test/resources/certs/dsa_self_signed.key PRE-CREATION 
  server/test/resources/certs/expired_cert.crt PRE-CREATION 
  server/test/resources/certs/non_x509_pem.crt PRE-CREATION 
  server/test/resources/certs/root_chain.crt PRE-CREATION 
  server/test/resources/certs/rsa_ca_signed.crt PRE-CREATION 
  server/test/resources/certs/rsa_ca_signed.key PRE-CREATION 
  server/test/resources/certs/rsa_ca_signed2.crt PRE-CREATION 
  server/test/resources/certs/rsa_ca_signed2.key PRE-CREATION 
  server/test/resources/certs/rsa_random_pkey.key PRE-CREATION 
  server/test/resources/certs/rsa_self_signed.crt PRE-CREATION 
  server/test/resources/certs/rsa_self_signed.key PRE-CREATION 
  server/test/resources/certs/rsa_self_signed_with_pwd.crt PRE-CREATION 
  server/test/resources/certs/rsa_self_signed_with_pwd.key PRE-CREATION 
  setup/db/db/schema-421to430.sql 26e4abf 
  utils/src/com/cloud/utils/net/NetUtils.java f590425 

Diff: https://reviews.apache.org/r/14976/diff/


Testing
-------

Testing was done using a VPX on my setup. 


Thanks,

Syed Ahmed


Re: Review Request 14976: [SSL Termination support] Part2 : Assign certificates to LBs

Posted by Murali Reddy <mu...@gmail.com>.
-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/14976/#review28272
-----------------------------------------------------------


patch does not apply on master. please rebase with latest master and update the patch

- Murali Reddy


On Nov. 6, 2013, 12:54 a.m., Syed Ahmed wrote:
> 
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> https://reviews.apache.org/r/14976/
> -----------------------------------------------------------
> 
> (Updated Nov. 6, 2013, 12:54 a.m.)
> 
> 
> Review request for cloudstack, Darren Shepherd, Murali Reddy, and Sheng Yang.
> 
> 
> Bugs: CLOUDSTACK-4821
>     https://issues.apache.org/jira/browse/CLOUDSTACK-4821
> 
> 
> Repository: cloudstack-git
> 
> 
> Description
> -------
> 
> This is the second patch for SSL termination support. This patch impletements the assginement of certificate to loadbalancers. Support for netscaler is also added. Due to the version of netscaler API in CS, I could not add support for certificate chain. This should not be a big change however. We can discuss this.
> 
> 
> NOTE: Because I cannot diff with my local branch, this patch also includes the first patch which includes certificate management logic ... sorry 
> 
> 
> Diffs
> -----
> 
>   api/src/com/cloud/agent/api/to/LoadBalancerTO.java df2f8a8 
>   api/src/com/cloud/event/EventTypes.java a762606 
>   api/src/com/cloud/network/Network.java 49f380b 
>   api/src/com/cloud/network/lb/CertService.java PRE-CREATION 
>   api/src/com/cloud/network/lb/LoadBalancingRule.java 4b37782 
>   api/src/com/cloud/network/lb/LoadBalancingRulesService.java 59d5c8d 
>   api/src/com/cloud/network/lb/SslCert.java PRE-CREATION 
>   api/src/org/apache/cloudstack/api/ApiConstants.java c75e6a0 
>   api/src/org/apache/cloudstack/api/command/user/loadbalancer/AssignCertToLoadBalancerCmd.java PRE-CREATION 
>   api/src/org/apache/cloudstack/api/command/user/loadbalancer/CreateLoadBalancerRuleCmd.java a368436 
>   api/src/org/apache/cloudstack/api/command/user/loadbalancer/DeleteSslCertCmd.java PRE-CREATION 
>   api/src/org/apache/cloudstack/api/command/user/loadbalancer/ListSslCertsCmd.java PRE-CREATION 
>   api/src/org/apache/cloudstack/api/command/user/loadbalancer/RemoveCertFromLoadBalancerCmd.java PRE-CREATION 
>   api/src/org/apache/cloudstack/api/command/user/loadbalancer/UploadSslCertCmd.java PRE-CREATION 
>   api/src/org/apache/cloudstack/api/response/SslCertResponse.java PRE-CREATION 
>   client/tomcatconf/applicationContext.xml.in 2a3520b 
>   client/tomcatconf/nonossComponentContext.xml.in 9d1da95 
>   core/src/com/cloud/agent/api/routing/LoadBalancerConfigCommand.java 3a51e8a 
>   engine/components-api/src/com/cloud/network/lb/LoadBalancingRulesManager.java 3e32585 
>   engine/schema/src/com/cloud/network/dao/LoadBalancerCertMapDao.java PRE-CREATION 
>   engine/schema/src/com/cloud/network/dao/LoadBalancerCertMapDaoImpl.java PRE-CREATION 
>   engine/schema/src/com/cloud/network/dao/LoadBalancerCertMapVO.java PRE-CREATION 
>   engine/schema/src/com/cloud/network/dao/LoadBalancerVO.java fee88cf 
>   engine/schema/src/com/cloud/network/dao/SslCertDao.java PRE-CREATION 
>   engine/schema/src/com/cloud/network/dao/SslCertDaoImpl.java PRE-CREATION 
>   engine/schema/src/com/cloud/network/dao/SslCertVO.java PRE-CREATION 
>   plugins/network-elements/elastic-loadbalancer/src/com/cloud/network/lb/ElasticLoadBalancerManagerImpl.java ab414de 
>   plugins/network-elements/internal-loadbalancer/src/org/apache/cloudstack/network/lb/InternalLoadBalancerVMManagerImpl.java b6269eb 
>   plugins/network-elements/internal-loadbalancer/test/org/apache/cloudstack/internallbvmmgr/InternalLBVMManagerTest.java 82f90fb 
>   plugins/network-elements/netscaler/src/com/cloud/network/element/NetscalerElement.java d63b14f 
>   plugins/network-elements/netscaler/src/com/cloud/network/resource/NetscalerResource.java fe072e1 
>   server/src/com/cloud/network/ExternalLoadBalancerDeviceManagerImpl.java dd48930 
>   server/src/com/cloud/network/lb/LoadBalancingRulesManagerImpl.java c685ee3 
>   server/src/com/cloud/network/router/VirtualNetworkApplianceManagerImpl.java 3dfcad5 
>   server/src/com/cloud/server/ManagementServerImpl.java 699f469 
>   server/src/org/apache/cloudstack/network/lb/ApplicationLoadBalancerManagerImpl.java 2385edc 
>   server/src/org/apache/cloudstack/network/lb/CertServiceImpl.java PRE-CREATION 
>   server/test/org/apache/cloudstack/lb/ApplicationLoadBalancerTest.java 9b46e68 
>   server/test/org/apache/cloudstack/network/lb/ApplicationLoadBalancerTest.java PRE-CREATION 
>   server/test/org/apache/cloudstack/network/lb/CertServiceTest.java PRE-CREATION 
>   server/test/resources/certs/bad_format_cert.crt PRE-CREATION 
>   server/test/resources/certs/dsa_self_signed.crt PRE-CREATION 
>   server/test/resources/certs/dsa_self_signed.key PRE-CREATION 
>   server/test/resources/certs/expired_cert.crt PRE-CREATION 
>   server/test/resources/certs/non_x509_pem.crt PRE-CREATION 
>   server/test/resources/certs/root_chain.crt PRE-CREATION 
>   server/test/resources/certs/rsa_ca_signed.crt PRE-CREATION 
>   server/test/resources/certs/rsa_ca_signed.key PRE-CREATION 
>   server/test/resources/certs/rsa_ca_signed2.crt PRE-CREATION 
>   server/test/resources/certs/rsa_ca_signed2.key PRE-CREATION 
>   server/test/resources/certs/rsa_random_pkey.key PRE-CREATION 
>   server/test/resources/certs/rsa_self_signed.crt PRE-CREATION 
>   server/test/resources/certs/rsa_self_signed.key PRE-CREATION 
>   server/test/resources/certs/rsa_self_signed_with_pwd.crt PRE-CREATION 
>   server/test/resources/certs/rsa_self_signed_with_pwd.key PRE-CREATION 
>   setup/db/db/schema-421to430.sql aaebf96 
>   utils/src/com/cloud/utils/net/NetUtils.java f590425 
> 
> Diff: https://reviews.apache.org/r/14976/diff/
> 
> 
> Testing
> -------
> 
> Testing was done using a VPX on my setup. 
> 
> 
> Thanks,
> 
> Syed Ahmed
> 
>


Re: Review Request 14976: [SSL Termination support] Part2 : Assign certificates to LBs

Posted by Syed Ahmed <sa...@cloudops.com>.
-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/14976/
-----------------------------------------------------------

(Updated Nov. 6, 2013, 12:54 a.m.)


Review request for cloudstack, Darren Shepherd, Murali Reddy, and Sheng Yang.


Changes
-------

Added the following changes to listSslCerts()

- list certificate by loadbalancer ID
- resoponse for listSslCerts() includes a list of lb that this cert is bound to


Bugs: CLOUDSTACK-4821
    https://issues.apache.org/jira/browse/CLOUDSTACK-4821


Repository: cloudstack-git


Description
-------

This is the second patch for SSL termination support. This patch impletements the assginement of certificate to loadbalancers. Support for netscaler is also added. Due to the version of netscaler API in CS, I could not add support for certificate chain. This should not be a big change however. We can discuss this.


NOTE: Because I cannot diff with my local branch, this patch also includes the first patch which includes certificate management logic ... sorry 


Diffs (updated)
-----

  api/src/com/cloud/agent/api/to/LoadBalancerTO.java df2f8a8 
  api/src/com/cloud/event/EventTypes.java a762606 
  api/src/com/cloud/network/Network.java 49f380b 
  api/src/com/cloud/network/lb/CertService.java PRE-CREATION 
  api/src/com/cloud/network/lb/LoadBalancingRule.java 4b37782 
  api/src/com/cloud/network/lb/LoadBalancingRulesService.java 59d5c8d 
  api/src/com/cloud/network/lb/SslCert.java PRE-CREATION 
  api/src/org/apache/cloudstack/api/ApiConstants.java c75e6a0 
  api/src/org/apache/cloudstack/api/command/user/loadbalancer/AssignCertToLoadBalancerCmd.java PRE-CREATION 
  api/src/org/apache/cloudstack/api/command/user/loadbalancer/CreateLoadBalancerRuleCmd.java a368436 
  api/src/org/apache/cloudstack/api/command/user/loadbalancer/DeleteSslCertCmd.java PRE-CREATION 
  api/src/org/apache/cloudstack/api/command/user/loadbalancer/ListSslCertsCmd.java PRE-CREATION 
  api/src/org/apache/cloudstack/api/command/user/loadbalancer/RemoveCertFromLoadBalancerCmd.java PRE-CREATION 
  api/src/org/apache/cloudstack/api/command/user/loadbalancer/UploadSslCertCmd.java PRE-CREATION 
  api/src/org/apache/cloudstack/api/response/SslCertResponse.java PRE-CREATION 
  client/tomcatconf/applicationContext.xml.in 2a3520b 
  client/tomcatconf/nonossComponentContext.xml.in 9d1da95 
  core/src/com/cloud/agent/api/routing/LoadBalancerConfigCommand.java 3a51e8a 
  engine/components-api/src/com/cloud/network/lb/LoadBalancingRulesManager.java 3e32585 
  engine/schema/src/com/cloud/network/dao/LoadBalancerCertMapDao.java PRE-CREATION 
  engine/schema/src/com/cloud/network/dao/LoadBalancerCertMapDaoImpl.java PRE-CREATION 
  engine/schema/src/com/cloud/network/dao/LoadBalancerCertMapVO.java PRE-CREATION 
  engine/schema/src/com/cloud/network/dao/LoadBalancerVO.java fee88cf 
  engine/schema/src/com/cloud/network/dao/SslCertDao.java PRE-CREATION 
  engine/schema/src/com/cloud/network/dao/SslCertDaoImpl.java PRE-CREATION 
  engine/schema/src/com/cloud/network/dao/SslCertVO.java PRE-CREATION 
  plugins/network-elements/elastic-loadbalancer/src/com/cloud/network/lb/ElasticLoadBalancerManagerImpl.java ab414de 
  plugins/network-elements/internal-loadbalancer/src/org/apache/cloudstack/network/lb/InternalLoadBalancerVMManagerImpl.java b6269eb 
  plugins/network-elements/internal-loadbalancer/test/org/apache/cloudstack/internallbvmmgr/InternalLBVMManagerTest.java 82f90fb 
  plugins/network-elements/netscaler/src/com/cloud/network/element/NetscalerElement.java d63b14f 
  plugins/network-elements/netscaler/src/com/cloud/network/resource/NetscalerResource.java fe072e1 
  server/src/com/cloud/network/ExternalLoadBalancerDeviceManagerImpl.java dd48930 
  server/src/com/cloud/network/lb/LoadBalancingRulesManagerImpl.java c685ee3 
  server/src/com/cloud/network/router/VirtualNetworkApplianceManagerImpl.java 3dfcad5 
  server/src/com/cloud/server/ManagementServerImpl.java 699f469 
  server/src/org/apache/cloudstack/network/lb/ApplicationLoadBalancerManagerImpl.java 2385edc 
  server/src/org/apache/cloudstack/network/lb/CertServiceImpl.java PRE-CREATION 
  server/test/org/apache/cloudstack/lb/ApplicationLoadBalancerTest.java 9b46e68 
  server/test/org/apache/cloudstack/network/lb/ApplicationLoadBalancerTest.java PRE-CREATION 
  server/test/org/apache/cloudstack/network/lb/CertServiceTest.java PRE-CREATION 
  server/test/resources/certs/bad_format_cert.crt PRE-CREATION 
  server/test/resources/certs/dsa_self_signed.crt PRE-CREATION 
  server/test/resources/certs/dsa_self_signed.key PRE-CREATION 
  server/test/resources/certs/expired_cert.crt PRE-CREATION 
  server/test/resources/certs/non_x509_pem.crt PRE-CREATION 
  server/test/resources/certs/root_chain.crt PRE-CREATION 
  server/test/resources/certs/rsa_ca_signed.crt PRE-CREATION 
  server/test/resources/certs/rsa_ca_signed.key PRE-CREATION 
  server/test/resources/certs/rsa_ca_signed2.crt PRE-CREATION 
  server/test/resources/certs/rsa_ca_signed2.key PRE-CREATION 
  server/test/resources/certs/rsa_random_pkey.key PRE-CREATION 
  server/test/resources/certs/rsa_self_signed.crt PRE-CREATION 
  server/test/resources/certs/rsa_self_signed.key PRE-CREATION 
  server/test/resources/certs/rsa_self_signed_with_pwd.crt PRE-CREATION 
  server/test/resources/certs/rsa_self_signed_with_pwd.key PRE-CREATION 
  setup/db/db/schema-421to430.sql aaebf96 
  utils/src/com/cloud/utils/net/NetUtils.java f590425 

Diff: https://reviews.apache.org/r/14976/diff/


Testing
-------

Testing was done using a VPX on my setup. 


Thanks,

Syed Ahmed


Re: Review Request 14976: [SSL Termination support] Part2 : Assign certificates to LBs

Posted by Syed Ahmed <sa...@cloudops.com>.
-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/14976/
-----------------------------------------------------------

(Updated Nov. 5, 2013, 7:10 p.m.)


Review request for cloudstack, Darren Shepherd, Murali Reddy, and Sheng Yang.


Changes
-------

Fixed Review comments by Murali ( Thanks Murali for the review ) 


Bugs: CLOUDSTACK-4821
    https://issues.apache.org/jira/browse/CLOUDSTACK-4821


Repository: cloudstack-git


Description
-------

This is the second patch for SSL termination support. This patch impletements the assginement of certificate to loadbalancers. Support for netscaler is also added. Due to the version of netscaler API in CS, I could not add support for certificate chain. This should not be a big change however. We can discuss this.


NOTE: Because I cannot diff with my local branch, this patch also includes the first patch which includes certificate management logic ... sorry 


Diffs (updated)
-----

  api/src/com/cloud/agent/api/to/LoadBalancerTO.java df2f8a8 
  api/src/com/cloud/event/EventTypes.java a762606 
  api/src/com/cloud/network/Network.java 49f380b 
  api/src/com/cloud/network/lb/CertService.java PRE-CREATION 
  api/src/com/cloud/network/lb/LoadBalancingRule.java 4b37782 
  api/src/com/cloud/network/lb/LoadBalancingRulesService.java 59d5c8d 
  api/src/com/cloud/network/lb/SslCert.java PRE-CREATION 
  api/src/org/apache/cloudstack/api/ApiConstants.java c75e6a0 
  api/src/org/apache/cloudstack/api/command/user/loadbalancer/AssignCertToLoadBalancerCmd.java PRE-CREATION 
  api/src/org/apache/cloudstack/api/command/user/loadbalancer/CreateLoadBalancerRuleCmd.java a368436 
  api/src/org/apache/cloudstack/api/command/user/loadbalancer/DeleteSslCertCmd.java PRE-CREATION 
  api/src/org/apache/cloudstack/api/command/user/loadbalancer/ListSslCertsCmd.java PRE-CREATION 
  api/src/org/apache/cloudstack/api/command/user/loadbalancer/RemoveCertFromLoadBalancerCmd.java PRE-CREATION 
  api/src/org/apache/cloudstack/api/command/user/loadbalancer/UploadSslCertCmd.java PRE-CREATION 
  api/src/org/apache/cloudstack/api/response/SslCertResponse.java PRE-CREATION 
  client/tomcatconf/applicationContext.xml.in 2a3520b 
  client/tomcatconf/nonossComponentContext.xml.in 9d1da95 
  core/src/com/cloud/agent/api/routing/LoadBalancerConfigCommand.java 3a51e8a 
  engine/components-api/src/com/cloud/network/lb/LoadBalancingRulesManager.java 3e32585 
  engine/schema/src/com/cloud/network/dao/LoadBalancerCertMapDao.java PRE-CREATION 
  engine/schema/src/com/cloud/network/dao/LoadBalancerCertMapDaoImpl.java PRE-CREATION 
  engine/schema/src/com/cloud/network/dao/LoadBalancerCertMapVO.java PRE-CREATION 
  engine/schema/src/com/cloud/network/dao/LoadBalancerVO.java fee88cf 
  engine/schema/src/com/cloud/network/dao/SslCertDao.java PRE-CREATION 
  engine/schema/src/com/cloud/network/dao/SslCertDaoImpl.java PRE-CREATION 
  engine/schema/src/com/cloud/network/dao/SslCertVO.java PRE-CREATION 
  plugins/network-elements/elastic-loadbalancer/src/com/cloud/network/lb/ElasticLoadBalancerManagerImpl.java ab414de 
  plugins/network-elements/internal-loadbalancer/src/org/apache/cloudstack/network/lb/InternalLoadBalancerVMManagerImpl.java b6269eb 
  plugins/network-elements/internal-loadbalancer/test/org/apache/cloudstack/internallbvmmgr/InternalLBVMManagerTest.java 82f90fb 
  plugins/network-elements/netscaler/src/com/cloud/network/element/NetscalerElement.java d63b14f 
  plugins/network-elements/netscaler/src/com/cloud/network/resource/NetscalerResource.java fe072e1 
  server/src/com/cloud/network/ExternalLoadBalancerDeviceManagerImpl.java dd48930 
  server/src/com/cloud/network/lb/LoadBalancingRulesManagerImpl.java c685ee3 
  server/src/com/cloud/network/router/VirtualNetworkApplianceManagerImpl.java 3dfcad5 
  server/src/com/cloud/server/ManagementServerImpl.java 699f469 
  server/src/org/apache/cloudstack/network/lb/ApplicationLoadBalancerManagerImpl.java 2385edc 
  server/src/org/apache/cloudstack/network/lb/CertServiceImpl.java PRE-CREATION 
  server/test/org/apache/cloudstack/lb/ApplicationLoadBalancerTest.java 9b46e68 
  server/test/org/apache/cloudstack/network/lb/ApplicationLoadBalancerTest.java PRE-CREATION 
  server/test/org/apache/cloudstack/network/lb/CertServiceTest.java PRE-CREATION 
  server/test/resources/certs/bad_format_cert.crt PRE-CREATION 
  server/test/resources/certs/dsa_self_signed.crt PRE-CREATION 
  server/test/resources/certs/dsa_self_signed.key PRE-CREATION 
  server/test/resources/certs/expired_cert.crt PRE-CREATION 
  server/test/resources/certs/non_x509_pem.crt PRE-CREATION 
  server/test/resources/certs/root_chain.crt PRE-CREATION 
  server/test/resources/certs/rsa_ca_signed.crt PRE-CREATION 
  server/test/resources/certs/rsa_ca_signed.key PRE-CREATION 
  server/test/resources/certs/rsa_ca_signed2.crt PRE-CREATION 
  server/test/resources/certs/rsa_ca_signed2.key PRE-CREATION 
  server/test/resources/certs/rsa_random_pkey.key PRE-CREATION 
  server/test/resources/certs/rsa_self_signed.crt PRE-CREATION 
  server/test/resources/certs/rsa_self_signed.key PRE-CREATION 
  server/test/resources/certs/rsa_self_signed_with_pwd.crt PRE-CREATION 
  server/test/resources/certs/rsa_self_signed_with_pwd.key PRE-CREATION 
  setup/db/db/schema-421to430.sql aaebf96 
  utils/src/com/cloud/utils/net/NetUtils.java f590425 

Diff: https://reviews.apache.org/r/14976/diff/


Testing
-------

Testing was done using a VPX on my setup. 


Thanks,

Syed Ahmed


Re: Review Request 14976: [SSL Termination support] Part2 : Assign certificates to LBs

Posted by Syed Ahmed <sa...@cloudops.com>.
-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/14976/
-----------------------------------------------------------

(Updated Oct. 30, 2013, 8:34 p.m.)


Review request for cloudstack, Darren Shepherd, Murali Reddy, and Sheng Yang.


Changes
-------

Fixing imports, adding event annotation and removing blank lines. ( Minor changes )


Bugs: CLOUDSTACK-4821
    https://issues.apache.org/jira/browse/CLOUDSTACK-4821


Repository: cloudstack-git


Description
-------

This is the second patch for SSL termination support. This patch impletements the assginement of certificate to loadbalancers. Support for netscaler is also added. Due to the version of netscaler API in CS, I could not add support for certificate chain. This should not be a big change however. We can discuss this.


NOTE: Because I cannot diff with my local branch, this patch also includes the first patch which includes certificate management logic ... sorry 


Diffs (updated)
-----

  api/src/com/cloud/agent/api/to/LoadBalancerTO.java df2f8a8 
  api/src/com/cloud/event/EventTypes.java a762606 
  api/src/com/cloud/network/Network.java 49f380b 
  api/src/com/cloud/network/lb/CertService.java PRE-CREATION 
  api/src/com/cloud/network/lb/LoadBalancingRule.java 4b37782 
  api/src/com/cloud/network/lb/LoadBalancingRulesService.java 59d5c8d 
  api/src/com/cloud/network/lb/SslCert.java PRE-CREATION 
  api/src/org/apache/cloudstack/api/ApiConstants.java c75e6a0 
  api/src/org/apache/cloudstack/api/command/user/loadbalancer/AssignCertToLoadBalancerCmd.java PRE-CREATION 
  api/src/org/apache/cloudstack/api/command/user/loadbalancer/CreateLoadBalancerRuleCmd.java a368436 
  api/src/org/apache/cloudstack/api/command/user/loadbalancer/DeleteSslCertCmd.java PRE-CREATION 
  api/src/org/apache/cloudstack/api/command/user/loadbalancer/ListSslCertsCmd.java PRE-CREATION 
  api/src/org/apache/cloudstack/api/command/user/loadbalancer/RemoveCertFromLoadBalancerCmd.java PRE-CREATION 
  api/src/org/apache/cloudstack/api/command/user/loadbalancer/UploadSslCertCmd.java PRE-CREATION 
  api/src/org/apache/cloudstack/api/response/SslCertResponse.java PRE-CREATION 
  client/tomcatconf/applicationContext.xml.in 2a3520b 
  client/tomcatconf/nonossComponentContext.xml.in 9d1da95 
  core/src/com/cloud/agent/api/routing/LoadBalancerConfigCommand.java 3a51e8a 
  engine/components-api/src/com/cloud/network/lb/LoadBalancingRulesManager.java 3e32585 
  engine/schema/src/com/cloud/network/dao/LoadBalancerCertMapDao.java PRE-CREATION 
  engine/schema/src/com/cloud/network/dao/LoadBalancerCertMapDaoImpl.java PRE-CREATION 
  engine/schema/src/com/cloud/network/dao/LoadBalancerCertMapVO.java PRE-CREATION 
  engine/schema/src/com/cloud/network/dao/LoadBalancerVO.java fee88cf 
  engine/schema/src/com/cloud/network/dao/SslCertDao.java PRE-CREATION 
  engine/schema/src/com/cloud/network/dao/SslCertDaoImpl.java PRE-CREATION 
  engine/schema/src/com/cloud/network/dao/SslCertVO.java PRE-CREATION 
  plugins/network-elements/elastic-loadbalancer/src/com/cloud/network/lb/ElasticLoadBalancerManagerImpl.java ab414de 
  plugins/network-elements/internal-loadbalancer/src/org/apache/cloudstack/network/lb/InternalLoadBalancerVMManagerImpl.java b6269eb 
  plugins/network-elements/internal-loadbalancer/test/org/apache/cloudstack/internallbelement/InternalLbElementTest.java f170fee 
  plugins/network-elements/internal-loadbalancer/test/org/apache/cloudstack/internallbvmmgr/InternalLBVMManagerTest.java 82f90fb 
  plugins/network-elements/netscaler/src/com/cloud/network/element/NetscalerElement.java d63b14f 
  plugins/network-elements/netscaler/src/com/cloud/network/resource/NetscalerResource.java fe072e1 
  server/src/com/cloud/network/ExternalLoadBalancerDeviceManagerImpl.java dd48930 
  server/src/com/cloud/network/lb/LoadBalancingRulesManagerImpl.java c685ee3 
  server/src/com/cloud/network/router/VirtualNetworkApplianceManagerImpl.java 3dfcad5 
  server/src/com/cloud/server/ManagementServerImpl.java 699f469 
  server/src/org/apache/cloudstack/network/lb/ApplicationLoadBalancerManagerImpl.java 2385edc 
  server/src/org/apache/cloudstack/network/lb/CertServiceImpl.java PRE-CREATION 
  server/test/org/apache/cloudstack/lb/ApplicationLoadBalancerTest.java 9b46e68 
  server/test/org/apache/cloudstack/network/lb/ApplicationLoadBalancerTest.java PRE-CREATION 
  server/test/org/apache/cloudstack/network/lb/CertServiceTest.java PRE-CREATION 
  server/test/resources/certs/bad_format_cert.crt PRE-CREATION 
  server/test/resources/certs/dsa_self_signed.crt PRE-CREATION 
  server/test/resources/certs/dsa_self_signed.key PRE-CREATION 
  server/test/resources/certs/expired_cert.crt PRE-CREATION 
  server/test/resources/certs/non_x509_pem.crt PRE-CREATION 
  server/test/resources/certs/root_chain.crt PRE-CREATION 
  server/test/resources/certs/rsa_ca_signed.crt PRE-CREATION 
  server/test/resources/certs/rsa_ca_signed.key PRE-CREATION 
  server/test/resources/certs/rsa_ca_signed2.crt PRE-CREATION 
  server/test/resources/certs/rsa_ca_signed2.key PRE-CREATION 
  server/test/resources/certs/rsa_random_pkey.key PRE-CREATION 
  server/test/resources/certs/rsa_self_signed.crt PRE-CREATION 
  server/test/resources/certs/rsa_self_signed.key PRE-CREATION 
  server/test/resources/certs/rsa_self_signed_with_pwd.crt PRE-CREATION 
  server/test/resources/certs/rsa_self_signed_with_pwd.key PRE-CREATION 
  setup/db/db/schema-421to430.sql aaebf96 
  utils/src/com/cloud/utils/net/NetUtils.java f590425 

Diff: https://reviews.apache.org/r/14976/diff/


Testing
-------

Testing was done using a VPX on my setup. 


Thanks,

Syed Ahmed