Skip to content

Commit d217457

Browse files
authored
Merge pull request #116 from sunnamed434/dev
Bump new version 0.13.0-alpha.24
2 parents f0c5f51 + 2c51a07 commit d217457

27 files changed

+120
-68
lines changed

BitMono.sln

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -61,7 +61,7 @@ Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "BitMono.Core.TestCases.Refl
6161
EndProject
6262
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "BitMono.Obfuscation.Tests", "test\BitMono.Obfuscation.Tests\BitMono.Obfuscation.Tests.csproj", "{49E6076C-FEC8-4411-B7AE-4DB6112370C1}"
6363
EndProject
64-
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "BitMono.Obfuscation.TestCases.CosturaDecompressor", "test\TestBinaries\BitMono.Obfuscation.TestCases.CosturaDecompressor\BitMono.Obfuscation.TestCases.CosturaDecompressor.csproj", "{E73C9803-971F-4F7D-A21B-9097C2EC1A80}"
64+
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "BitMono.Obfuscation.TestCases.CosturaDecompressor", "test\TestBinaries\DotNet\BitMono.Obfuscation.TestCases.CosturaDecompressor\BitMono.Obfuscation.TestCases.CosturaDecompressor.csproj", "{E73C9803-971F-4F7D-A21B-9097C2EC1A80}"
6565
EndProject
6666
Global
6767
GlobalSection(SolutionConfigurationPlatforms) = preSolution

CHANGELOG.md

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
| Versions: |
22
|---------------------------------|
3+
| [v0.13.0-alpha](#v0130-alpha24) |
34
| [v0.12.2-alpha](#v0122-alpha23) |
45
| [v0.12.1-alpha](#v0121-alpha22) |
56
| [v0.12.0-alpha](#v0120-alpha21) |
@@ -25,6 +26,18 @@
2526
| [v0.1.0](#v010) |
2627

2728
---
29+
### v0.13.0-alpha.24:
30+
2023-04-05
31+
#### Added:
32+
* Return obfuscation success & failure status from BitMono.CLI (0 - Success, 1 - Failure), thanks to [techei](https://github.com/techei).
33+
* More docs and answers to the questions.
34+
35+
#### Fixed:
36+
* Assembly resolve [#113](https://github.com/sunnamed434/BitMono/issues/113), thanks to [techei](https://github.com/techei) for the bug report.
37+
38+
#### Changed:
39+
* Docs information about protections.
40+
2841
### v0.12.2-alpha.23:
2942
2023-03-08
3043
#### Fixed:
Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,4 @@
1+
Unable to reference after protect?
2+
==================================
3+
4+
You're probably stuck on a problem, when you want to use your ``.dll`` after protection, you protect it via BitMono and try to reference it in IDE or whatever else, you're doing a bit wrong, you need to have an original copy and use it as a reference, and as output folder (i.e Release\...) drop there a protected version of your ``.dll``.

docs/index.rst

Lines changed: 1 addition & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -6,14 +6,6 @@ This is the documentation of the BitMono project. BitMono is not only a tool tha
66
Table of Contents:
77
------------------
88

9-
.. toctree::
10-
:maxdepth: 1
11-
:caption: How to use
12-
:name: sec-general
13-
14-
overview
15-
16-
179
.. toctree::
1810
:maxdepth: 1
1911
:caption: Protections
@@ -52,4 +44,5 @@ Table of Contents:
5244

5345
faq/costura-support
5446
faq/disable-path-masking
47+
faq/unable-to-reference-after-protect
5548
faq/when-and-why-use-bitmono

docs/protections/bitdotnet.rst

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
BitDotnet
1+
BitDotNet
22
=========
33

44
How it works?

docs/protections/fullrenamer.rst

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,4 +3,6 @@ FullRenamer
33

44
How it works?
55
-------------
6-
Protection renames types/methods/fields, however, ignores things that were used in reflection.
6+
Protection renames types/methods/fields, however, ignores things such as reflection, Unity Methods (Update/FixedUpdate/LateUpdate, i.e all of them), and the most popular frameworks for plugin development in Unity on GitHub - RocketMod, OpenMod, and rust-oxide-umod, you even could specify your methods/types to ignore.
7+
8+
Be careful, because renamer is tricky protection, not always useful, and does not always work properly. But, if you configure BitMono correctly Renamer can be a great protection (I'm about big projects, not crackmes).

docs/protections/stringsencryption.rst

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,4 +3,6 @@ StringsEncryption
33

44
How it works?
55
-------------
6-
Protection encrypts strings.
6+
Protection encrypts strings using basic AES encryption, but not everyone like it because it makes the worse performance of application.
7+
8+
Had big thoughts about `Unmanaged String <https://github.com/MrakDev/UnmanagedString>`_, but, as I tested in Mono it causes problems.

props/SharedProjectProps.props

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -6,12 +6,12 @@
66
<PackageLicenseExpression>MIT</PackageLicenseExpression>
77
<PackageProjectUrl>https://github.com/sunnamed434/BitMono</PackageProjectUrl>
88
<PackageOwners>sunnamed434</PackageOwners>
9-
<PackageVersion>0.12.2-alpha.23</PackageVersion>
9+
<PackageVersion>0.13.0-alpha.24</PackageVersion>
1010
<RepositoryUrl>https://github.com/sunnamed434/BitMono</RepositoryUrl>
1111
<RepositoryType>git</RepositoryType>
1212
<Authors>sunnamed434</Authors>
13-
<Version>0.12.2-alpha.23</Version>
14-
<InformationalVersion>0.12.2-alpha.23</InformationalVersion>
13+
<Version>0.13.0-alpha.24</Version>
14+
<InformationalVersion>0.13.0-alpha.24</InformationalVersion>
1515
<Company>BitMono</Company>
1616
<Copyright>sunnamed434</Copyright>
1717
<LangVersion>10</LangVersion>
Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
namespace BitMono.CLI;
2+
3+
internal static class KnownReturnStatuses
4+
{
5+
public const int Success = 0;
6+
public const int Failure = 1;
7+
}

src/BitMono.CLI/Program.cs

Lines changed: 10 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
#pragma warning disable CS8604
1+
#pragma warning disable CS8604
22
namespace BitMono.CLI;
33

44
internal class Program
@@ -14,8 +14,9 @@ ___ _ __ __ ___
1414
https://github.com/sunnamed434/BitMono
1515
{BitMonoFileVersionText}";
1616

17-
private static async Task Main(string[] args)
17+
private static async Task<int> Main(string[] args)
1818
{
19+
var errorCode = KnownReturnStatuses.Success;
1920
try
2021
{
2122
Console.Title = BitMonoFileVersionText;
@@ -33,11 +34,11 @@ private static async Task Main(string[] args)
3334
var logger = lifetimeScope
3435
.Resolve<ILogger>()
3536
.ForContext<Program>();
36-
3737
var needs = new ObfuscationNeedsFactory(args, logger).Create();
3838
if (needs == null)
3939
{
40-
return;
40+
errorCode = KnownReturnStatuses.Failure;
41+
return errorCode;
4142
}
4243

4344
Console.Clear();
@@ -53,7 +54,8 @@ private static async Task Main(string[] args)
5354
{
5455
logger.Fatal("Engine has fatal issues, unable to continue!");
5556
Console.ReadLine();
56-
return;
57+
errorCode = KnownReturnStatuses.Failure;
58+
return errorCode;
5759
}
5860

5961
if (obfuscation.OpenFileDestinationInFileExplorer)
@@ -64,8 +66,10 @@ private static async Task Main(string[] args)
6466
catch (Exception ex)
6567
{
6668
Console.WriteLine("Something went wrong! " + ex);
69+
errorCode = KnownReturnStatuses.Failure;
6770
}
6871
Console.WriteLine("Enter anything to exit!");
6972
Console.ReadLine();
73+
return errorCode;
7074
}
71-
}
75+
}

0 commit comments

Comments
 (0)