summaryrefslogtreecommitdiff
path: root/src/format/program.c
diff options
context:
space:
mode:
authorCyrille Bagard <nocbos@gmail.com>2024-11-23 15:59:19 (GMT)
committerCyrille Bagard <nocbos@gmail.com>2024-11-23 15:59:19 (GMT)
commit411f03130cf45194689bc344f19a3b77c33a31ae (patch)
treef047b62015eb37e30629398f9adcb977a5a6c6f6 /src/format/program.c
parent80d779749adf228078b61f268bf952ba91a277f0 (diff)
Restore more features for formats.
Diffstat (limited to 'src/format/program.c')
-rw-r--r--src/format/program.c52
1 files changed, 52 insertions, 0 deletions
diff --git a/src/format/program.c b/src/format/program.c
index 3624496..d44f988 100644
--- a/src/format/program.c
+++ b/src/format/program.c
@@ -285,8 +285,28 @@ static void g_program_format_finalize(GProgramFormat *format)
}
+/******************************************************************************
+* *
+* Paramètres : format = description du format à initialiser pleinement. *
+* content = contenu binaire à parcourir. *
+* *
+* Description : Met en place un nouveau contenu binaire à analyser. *
+* *
+* Retour : Bilan de l'opération. *
+* *
+* Remarques : - *
+* *
+******************************************************************************/
+
+bool g_program_format_create(GProgramFormat *format, GBinContent *content)
+{
+ bool result; /* Bilan à retourner */
+ result = g_known_format_create(G_KNOWN_FORMAT(format), content);
+ return result;
+
+}
#if 0
@@ -446,6 +466,38 @@ SourceEndian g_program_format_get_endianness(const GProgramFormat *format)
}
+/******************************************************************************
+* *
+* Paramètres : format = description du programme à consulter. *
+* name = nom de la section recherchée. *
+* range = emplacement en mémoire à renseigner. [OUT] *
+* *
+* Description : Fournit l'emplacement d'une section donnée. *
+* *
+* Retour : Bilan de l'opération. *
+* *
+* Remarques : - *
+* *
+******************************************************************************/
+
+bool g_program_format_get_section_range_by_name(const GProgramFormat *format, const char *name, mrange_t *range)
+{
+ bool result; /* Bilan à retourner */
+ GProgramFormatClass *class; /* Classe de l'instance */
+
+ class = G_PROGRAM_FORMAT_GET_CLASS(format);
+
+ if (class->get_range_by_name == NULL)
+ result = false;
+
+ else
+ result = class->get_range_by_name(format, name, range);
+
+ return result;
+
+}
+
+
#if 0
/******************************************************************************