diff --git a/lib/bb/fetch2/svn.py b/lib/bb/fetch2/svn.py
index 0852108e7d98..9f61390f1799 100644
--- a/lib/bb/fetch2/svn.py
+++ b/lib/bb/fetch2/svn.py
@@ -73,9 +73,17 @@ class Svn(FetchMethod):
         proto = ud.parm.get('protocol', 'svn')
 
         svn_ssh = None
+        svn_https_cert = None
+        svn_https_pass = None
         if proto == "svn+ssh" and "ssh" in ud.parm:
             svn_ssh = ud.parm["ssh"]
 
+        if proto == "https":
+            if "cert_file" in ud.parm:
+                svn_https_cert = ud.parm["cert_file"]
+            if "cert_pass" in ud.parm:
+                svn_https_pass = ud.parm["cert_pass"]
+
         svnroot = ud.host + ud.path
 
         options = []
@@ -117,6 +125,12 @@ class Svn(FetchMethod):
         if svn_ssh:
             svncmd = "SVN_SSH=\"%s\" %s" % (svn_ssh, svncmd)
 
+        if svn_https_cert:
+            svncmd = "%s --config-option=servers:global:ssl-client-cert-file=\"%s\"" % (svncmd, svn_https_cert)
+
+        if svn_https_pass:
+            svncmd = "%s --config-option=servers:global:ssl-client-cert-password=\"%s\"" % (svncmd, svn_https_pass)
+
         return svncmd
 
     def download(self, ud, d):
@@ -176,7 +190,7 @@ class Svn(FetchMethod):
 
         bb.utils.remove(ud.localpath)
         bb.utils.remove(ud.moddir, True)
-        
+
 
     def supports_srcrev(self):
         return True
