Skip to content

Commit 5e0c794

Browse files
committed
initial commit
0 parents  commit 5e0c794

17 files changed

+438
-0
lines changed

Makefile

Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,20 @@
1+
# Minimal makefile for Sphinx documentation
2+
#
3+
4+
# You can set these variables from the command line, and also
5+
# from the environment for the first two.
6+
SPHINXOPTS ?=
7+
SPHINXBUILD ?= sphinx-build
8+
SOURCEDIR = .
9+
BUILDDIR = build
10+
11+
# Put it first so that "make" without argument is like "make help".
12+
help:
13+
@$(SPHINXBUILD) -M help "$(SOURCEDIR)" "$(BUILDDIR)" $(SPHINXOPTS) $(O)
14+
15+
.PHONY: help Makefile
16+
17+
# Catch-all target: route all unknown targets to Sphinx using the new
18+
# "make mode" option. $(O) is meant as a shortcut for $(SPHINXOPTS).
19+
%: Makefile
20+
@$(SPHINXBUILD) -M $@ "$(SOURCEDIR)" "$(BUILDDIR)" $(SPHINXOPTS) $(O)

_static/logo2.png

490 KB
Loading

_static/style.css

Lines changed: 73 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,73 @@
1+
@charset "utf-8";
2+
3+
4+
.md-content dl dt {
5+
font-weight: 700;
6+
margin-bottom: 12px;
7+
}
8+
9+
.md-content dt{
10+
display: table;
11+
margin: 6px 0;
12+
font-size: 90%;
13+
line-height: normal;
14+
background: #e7f2fa;
15+
/*color: #2980b9;*/
16+
border-top: 3px solid #6ab0de;
17+
padding: 6px;
18+
position: relative
19+
}
20+
21+
.md-content code, .md-content tt, code {
22+
white-space: nowrap;
23+
max-width: 100%;
24+
background: #fff;
25+
border: 1px solid #e1e4e5;
26+
font-size: 75%;
27+
padding: 0 5px;
28+
font-family: SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,Courier,monospace;
29+
color: #e74c3c;
30+
overflow-x: auto;
31+
}
32+
33+
34+
.md-content code, .md-content tt {
35+
font-family: SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,Courier,monospace;
36+
padding: 2px 5px;
37+
}
38+
39+
.md-content em {
40+
font-style: italic;
41+
color: #2980b9;
42+
}
43+
44+
.md-content dl:not(.docutils)
45+
dl:not(.option-list):not(.field-list):not(.footnote):not(.citation):not(.glossary):not(.simple)>dt,
46+
html.writer-html5 .md-content dl[class]:not(.option-list):not(.field-list):not(.footnote):not(.citation):not(.glossary):not(.simple)
47+
dl:not(.option-list):not(.field-list):not(.footnote):not(.citation):not(.glossary):not(.simple)>dt {
48+
margin-bottom: 6px;
49+
border: none;
50+
border-left: 3px solid #ccc;
51+
background: #f0f0f0;
52+
color: #555;
53+
}
54+
55+
.md-content em.property,
56+
.md-content em.sig-param{
57+
color: #555;
58+
}
59+
60+
span.sig-name.descname {
61+
color: #000;
62+
}
63+
64+
65+
html.writer-html4 .md-content dl:not(.docutils) .descclassname,
66+
html.writer-html4 .md-content dl:not(.docutils) .descname,
67+
html.writer-html4 .md-content dl:not(.docutils) .sig-name,
68+
html.writer-html5 .md-content dl[class]:not(.option-list):not(.field-list):not(.footnote):not(.citation):not(.glossary):not(.simple) .descclassname,
69+
html.writer-html5 .md-content dl[class]:not(.option-list):not(.field-list):not(.footnote):not(.citation):not(.glossary):not(.simple) .descname,
70+
html.writer-html5 .md-content dl[class]:not(.option-list):not(.field-list):not(.footnote):not(.citation):not(.glossary):not(.simple) .sig-name {
71+
font-family: SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,Courier,monospace;
72+
color: #000;
73+
}

_static/thesis.pdf

2.04 MB
Binary file not shown.

_static/thesis.png

123 KB
Loading

conf.py

Lines changed: 142 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,142 @@
1+
# Configuration file for the Sphinx documentation builder.
2+
#
3+
# This file only contains a selection of the most common options. For a full
4+
# list see the documentation:
5+
# https://www.sphinx-doc.org/en/master/usage/configuration.html
6+
7+
# -- Path setup --------------------------------------------------------------
8+
9+
# If extensions (or modules to document with autodoc) are in another directory,
10+
# add these directories to sys.path here. If the directory is relative to the
11+
# documentation root, use os.path.abspath to make it absolute, like shown here.
12+
#
13+
import os
14+
import sys
15+
# sys.path.insert(0, os.path.abspath('.'))
16+
sys.path.insert(0, os.path.abspath('idascript'))
17+
18+
# -- Project information -----------------------------------------------------
19+
20+
project = 'Diffing Portal'
21+
copyright = ''
22+
author = 'Quarkslab'
23+
24+
# The full version, including alpha/beta/rc tags
25+
release = '0.2'
26+
27+
# The language for content autogenerated by Sphinx. Refer to documentation
28+
# for a list of supported languages.
29+
language = 'en'
30+
31+
# The name of the Pygments (syntax highlighting) style to use.
32+
pygments_style = 'default' # also monokai, friendly, colorful
33+
34+
35+
# -- General configuration ---------------------------------------------------
36+
37+
# Add any Sphinx extension module names here, as strings. They can be
38+
# extensions coming with Sphinx (named 'sphinx.ext.*') or your custom
39+
# ones.
40+
extensions = [
41+
'myst_parser',
42+
'sphinx_design',
43+
'sphinx.ext.autodoc',
44+
'sphinx.ext.intersphinx',
45+
'sphinx.ext.imgmath',
46+
]
47+
48+
myst_enable_extensions = ["colon_fence", "dollarmath"]
49+
50+
autosummary_generate = True
51+
autoclass_content = "class"
52+
53+
# Add any paths that contain templates here, relative to this directory.
54+
templates_path = ['_templates']
55+
56+
# List of patterns, relative to source directory, that match files and
57+
# directories to ignore when looking for source files.
58+
# This pattern also affects html_static_path and html_extra_path.
59+
exclude_patterns = ["idascript/idascript/*"]
60+
61+
intersphinx_mapping = {
62+
'python': ('https://docs.python.org/3', None),
63+
}
64+
65+
# ~ autodoc_type_aliases = {
66+
# ~ 'Graph': 'qbindiff.abstract.GenericGraph',
67+
# ~ 'qbindiff.types.Graph': 'qbindiff.abstract.GenericGraph',
68+
# ~ 'qbindiff.Graph': 'qbindiff.abstract.GenericGraph',
69+
# ~ }
70+
71+
72+
# -- Options for HTML output -------------------------------------------------
73+
74+
# The theme to use for HTML and HTML Help pages. See the documentation for
75+
# a list of builtin themes.
76+
#
77+
html_theme = 'sphinx_material' #'sphinx_rtd_theme', "sphinx_book_theme"
78+
79+
# Add any paths that contain custom static files (such as style sheets) here,
80+
# relative to this directory. They are copied after the builtin static files,
81+
# so a file named "default.css" will overwrite the builtin "default.css".
82+
html_static_path = ['_static']
83+
84+
# These paths are either relative to html_static_path
85+
# or fully qualified paths (eg. https://...)
86+
html_css_files = [
87+
'style.css',
88+
]
89+
90+
html_show_sourcelink = True
91+
html_sidebars = {
92+
"**": ["logo-text.html", "globaltoc.html", "localtoc.html", "searchbox.html"] # Somehow make appearing sidebar
93+
}
94+
95+
96+
# Set link name generated in the top bar.
97+
html_title = 'Diffing Portal'
98+
99+
# Material theme options (see theme.conf for more information)
100+
html_theme_options = {
101+
"base_url": "https://quarkslab.gitlab.io/diffing-portal",
102+
"repo_url": "", # At the top right (with badges)
103+
"repo_name": "Diffing Portal",
104+
"google_analytics_account": "UA-XXXXX",
105+
"html_minify": False,
106+
"html_prettify": True,
107+
"css_minify": True,
108+
"logo_icon": "&#xe869",
109+
"repo_type": "github",
110+
"globaltoc_depth": 2,
111+
"color_primary": "#4051b5",
112+
"color_accent": "#d8f32a",#"#566df3",
113+
"touch_icon": "apple-icon-152x152.png",
114+
"theme_color": "#4051b5",
115+
"master_doc": False,
116+
# "nav_links": [
117+
# {"href": "index", "internal": True, "title": "QBindiff++"},
118+
# {
119+
# "href": "https://squidfunk.github.io/mkdocs-material/",
120+
# "internal": False,
121+
# "title": "QBindiff--",
122+
# },
123+
# ],
124+
125+
# Text written betwen top bar and nav bar
126+
# "heroes": {
127+
# "index": "A responsive Material Design theme for Sphinx sites.",
128+
# "customization": "Configuration options to personalize your site.",
129+
# },
130+
131+
# Versions infos
132+
# "version_dropdown": False, # Version dropdown at the top right
133+
# "version_json": "_static/versions.json",
134+
# "version_info": {
135+
# "Release": "https://bashtage.github.io/sphinx-material/",
136+
# "Development": "https://bashtage.github.io/sphinx-material/devel/",
137+
# "Release (rel)": "/sphinx-material/",
138+
# "Development (rel)": "/sphinx-material/devel/",
139+
# },
140+
141+
"table_classes": ["plain"],
142+
}

exporter/binexport.rst

Lines changed: 25 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,25 @@
1+
Binexport
2+
=========
3+
4+
Introduction
5+
------------
6+
7+
TODO: Expliquer ce que c'est
8+
9+
10+
python-binexport
11+
----------------
12+
13+
TOOD: Expliquer ce que c'est
14+
TODO: Installation
15+
TODO: Usage
16+
17+
API
18+
---
19+
20+
.. toctree::
21+
:caption: API
22+
:maxdepth: 2
23+
:hidden:
24+
25+
python-binexport/doc/api

exporter/quokka.rst

Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,20 @@
1+
Quokka
2+
======
3+
4+
Introduction
5+
------------
6+
7+
TODO: Expliquer ce que c'est
8+
9+
TODO: Ripper le README.md
10+
11+
Documentation
12+
-------------
13+
14+
TODO: lien
15+
16+
17+
API
18+
---
19+
20+
TODO: Lien externe vers l'API

index.rst

Lines changed: 74 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,74 @@
1+
==============
2+
Diffing Portal
3+
==============
4+
5+
Introduction
6+
------------
7+
8+
TODO:
9+
- expliquer le but (centraliser differentes ressource sur le diffing binaire mais pas que)
10+
- parler vite fais des exporters
11+
- dire que le but c'est automatiser le diffing !
12+
- mettre schéma des interactions entre outils
13+
14+
15+
.. toctree::
16+
:caption: Exporters
17+
:maxdepth: 2
18+
:hidden:
19+
20+
exporter/binexport
21+
exporter/quokka
22+
23+
Qbindiff
24+
--------
25+
26+
.. toctree::
27+
:caption: Qbindiff
28+
:maxdepth: 2
29+
:hidden:
30+
31+
qbindiff/doc/source/installation
32+
qbindiff/doc/source/documentation
33+
qbindiff/doc/source/api/qbindiff
34+
qbindiff/doc/source/publication
35+
36+
37+
38+
.. toctree::
39+
:caption: Third-party differs
40+
:maxdepth: 2
41+
:hidden:
42+
43+
other_differ/bindiff
44+
other_differ/diaphora
45+
46+
47+
48+
Tutorials
49+
---------
50+
51+
.. toctree::
52+
:caption: Tutorials
53+
:maxdepth: 2
54+
55+
tutorials/basic-diffing.rst
56+
tutorials/using-passes.rst
57+
tutorials/diffing-obfuscated-binaries.rst
58+
59+
60+
.. toctree::
61+
:caption: Tools
62+
:maxdepth: 2
63+
:hidden:
64+
65+
idascript/README
66+
67+
68+
69+
.. toctree::
70+
:caption: Resources
71+
:maxdepth: 2
72+
:hidden:
73+
74+
resources/academia

other_differ/bindiff.rst

Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,21 @@
1+
Bindiff
2+
=======
3+
4+
Introduction
5+
------------
6+
7+
TODO
8+
9+
python-bindiff
10+
--------------
11+
12+
TODO
13+
14+
Usage
15+
-----
16+
17+
18+
API
19+
---
20+
21+
TODO: toctree ?

other_differ/diaphora.rst

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
Diaphora
2+
========
3+
4+
TODO: Introduction & due links to the project
5+

requirements.txt

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,9 @@
1+
sphinx
2+
sphinx-rtd-theme
3+
myst-parser
4+
breathe
5+
sphinx_fontawesome
6+
nbsphinx
7+
ipython
8+
sphinx-design
9+
sphinx-material

0 commit comments

Comments
 (0)