Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/SoftEtherVPN/SoftEtherVPN_Stable.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'src/BuildUtil/CodeSign.cs')
-rw-r--r--src/BuildUtil/CodeSign.cs32
1 files changed, 22 insertions, 10 deletions
diff --git a/src/BuildUtil/CodeSign.cs b/src/BuildUtil/CodeSign.cs
index 8733f358..76a8c7ba 100644
--- a/src/BuildUtil/CodeSign.cs
+++ b/src/BuildUtil/CodeSign.cs
@@ -3,9 +3,9 @@
//
// SoftEther VPN Server, Client and Bridge are free software under GPLv2.
//
-// Copyright (c) 2012-2014 Daiyuu Nobori.
-// Copyright (c) 2012-2014 SoftEther VPN Project, University of Tsukuba, Japan.
-// Copyright (c) 2012-2014 SoftEther Corporation.
+// Copyright (c) 2012-2016 Daiyuu Nobori.
+// Copyright (c) 2012-2016 SoftEther VPN Project, University of Tsukuba, Japan.
+// Copyright (c) 2012-2016 SoftEther Corporation.
//
// All Rights Reserved.
//
@@ -153,9 +153,9 @@ namespace BuildUtil
#endif
static object lockObj = new object();
-
+
// Digital-sign the data on the memory
- public static byte[] SignMemory(byte[] srcData, string comment, bool kernelModeDriver, int cert_id)
+ public static byte[] SignMemory(byte[] srcData, string comment, bool kernelModeDriver, int cert_id, int sha_mode)
{
#if !BU_OSS
int i;
@@ -176,10 +176,11 @@ namespace BuildUtil
try
{
- out_filename = sign.ExecSign(Path.GetFileName(in_tmp_filename),
+ out_filename = sign.ExecSignEx(Path.GetFileName(in_tmp_filename),
kernelModeDriver,
comment,
- cert_id);
+ cert_id,
+ sha_mode);
break;
}
catch (Exception ex)
@@ -259,15 +260,26 @@ namespace BuildUtil
{
int cert_id = UsingCertId;
- SignFile(destFileName, srcFileName, comment, kernelModeDriver, cert_id);
+ SignFile(destFileName, srcFileName, comment, kernelModeDriver, cert_id, 0);
}
- public static void SignFile(string destFileName, string srcFileName, string comment, bool kernelModeDriver, int cert_id)
+ public static void SignFile(string destFileName, string srcFileName, string comment, bool kernelModeDriver, int cert_id, int sha_mode)
{
#if !BU_OSS
+ if (cert_id == 0)
+ {
+ cert_id = UsingCertId;
+ }
+
Con.WriteLine("Signing for '{0}'...", Path.GetFileName(destFileName));
byte[] srcData = File.ReadAllBytes(srcFileName);
- byte[] destData = SignMemory(srcData, comment, kernelModeDriver, cert_id);
+ if (srcFileName.EndsWith(".msi", StringComparison.InvariantCultureIgnoreCase))
+ {
+ sha_mode = 1;
+ // todo: Set 2 in future !!!
+ }
+
+ byte[] destData = SignMemory(srcData, comment, kernelModeDriver, cert_id, sha_mode);
try
{