Skip to content

SigNET is a set of tools (NuGet package, CLI app and GUI app) that allow reading files' debug signatures and checking if executable matches the debugging symbols (DLL matches PDB) or if NuGet package matches the symbols package (NUPKG matches SNUPKG).

License

Notifications You must be signed in to change notification settings

McjMzn/DebugSignaturesComparer

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

58 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

SigNET - Debug Signatures Comparer

MIT License Test, Build, Publish

Read files' debug signatures. Check if executable matches the debugging symbols (DLL matches PDB) or if NuGet package matches the symbols package (NUPKG matches SNUPKG). Either programatically, or with CLI or with GUI application!

Debug Signatures Library

Platform Nuget

Available as NuGet package, contais utility classes that can be used to check and compare debug signatures of files. Supports Portable Executables, Program Databases and ZIP Archives.

Reading Debug Signature

var debugSignaturesReader = new DebugsignaturesReader();
List<DebugSignatureReading> readings;

 // Portable Executables
 readings = debugSignaturesReader.Read("library.dll");
 readings = debugSignaturesReader.Read("program.exe");
   
 // Program Databases
 readings = debugSignaturesReader.Read("program.pdb");
 
 // Archives
 readings = debugSignaturesReader.Read("archive.zip");
 readings = debugSignaturesReader.Read("nuget.package.1.0.0.nupkg");
 readings = debugSignaturesReader.Read("symbols.package.1.0.0.snupkg");

Comparing Debug Signatures

// With bare DebugSignaturesReader
var debugSignaturesReader = new DebugsignaturesReader();
var dllSignature = debugSignaturesReader.Read("library.dll").Single().DebugSignature;
var pdbSignature = debugSignaturesReader.Read("library.pdb").Single().DebugSignature;
var matching = dllSignature == pdbSignature;

// With DebugSignaturesComparer's static method
var matching = DebugSignaturesComparer.AreMatching("library.dll", "library.pdb");

// With instance of DebugSignaturesComparer
var comparer = new DebugSignaturesComparer();
comparer.AddItem("library.dll");
comparer.AddItem("library.pdb");
var matching = comparer.ReadingsMatched;

Debug Signatures Comparer CLI

Platform Platform

Compare debug signatures directly from command line interface. cli-image-1

Debug Signatures Comparer GUI

Platform Platform

Simple Drag-and-Drop application allowing to easily check if files have matching debug signature. gui-image-1 gui-image-2

About

SigNET is a set of tools (NuGet package, CLI app and GUI app) that allow reading files' debug signatures and checking if executable matches the debugging symbols (DLL matches PDB) or if NuGet package matches the symbols package (NUPKG matches SNUPKG).

Resources

License

Stars

Watchers

Forks

Languages