1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124
|
.Dd June 27, 2015
.Dt libsigscan 3
.Os libsigscan
.Sh NAME
.Nm libsigscan.h
.Nd Library for binary signature scanning
.Sh LIBRARY
.Lb libsigscan
.Sh SYNOPSIS
.In libsigscan.h
.Pp
Support functions
.Ft const char *
.Fn libsigscan_get_version "void"
.Ft int
.Fn libsigscan_get_access_flags_read "void"
.Ft int
.Fn libsigscan_get_codepage "int *codepage, libsigscan_error_t **error"
.Ft int
.Fn libsigscan_set_codepage "int codepage, libsigscan_error_t **error"
.Pp
Notify functions
.Ft void
.Fn libsigscan_notify_set_verbose "int verbose"
.Ft int
.Fn libsigscan_notify_set_stream "FILE *stream, libsigscan_error_t **error"
.Ft int
.Fn libsigscan_notify_stream_open "const char *filename, libsigscan_error_t **error"
.Ft int
.Fn libsigscan_notify_stream_close "libsigscan_error_t **error"
.Pp
Error functions
.Ft void
.Fn libsigscan_error_free "libsigscan_error_t **error"
.Ft int
.Fn libsigscan_error_fprint "libsigscan_error_t *error, FILE *stream"
.Ft int
.Fn libsigscan_error_sprint "libsigscan_error_t *error, char *string, size_t size"
.Ft int
.Fn libsigscan_error_backtrace_fprint "libsigscan_error_t *error, FILE *stream"
.Ft int
.Fn libsigscan_error_backtrace_sprint "libsigscan_error_t *error, char *string, size_t size"
.Pp
Scanner functions
.Ft int
.Fn libsigscan_scanner_initialize "libsigscan_scanner_t **scanner, libsigscan_error_t **error"
.Ft int
.Fn libsigscan_scanner_free "libsigscan_scanner_t **scanner, libsigscan_error_t **error"
.Ft int
.Fn libsigscan_scanner_signal_abort "libsigscan_scanner_t *scanner, libsigscan_error_t **error"
.Ft int
.Fn libsigscan_scanner_set_scan_buffer_size "libsigscan_scanner_t *scanner, size_t scan_buffer_size, libsigscan_error_t **error"
.Ft int
.Fn libsigscan_scanner_add_signature "libsigscan_scanner_t *scanner, const char *identifier, size_t identifier_length, off64_t pattern_offset, const uint8_t *pattern, size_t pattern_size, uint32_t signature_flags, libsigscan_error_t **error"
.Ft int
.Fn libsigscan_scanner_scan_start "libsigscan_scanner_t *scanner, libsigscan_scan_state_t *scan_state, libsigscan_error_t **error"
.Ft int
.Fn libsigscan_scanner_scan_stop "libsigscan_scanner_t *scanner, libsigscan_scan_state_t *scan_state, libsigscan_error_t **error"
.Ft int
.Fn libsigscan_scanner_scan_buffer "libsigscan_scanner_t *scanner, libsigscan_scan_state_t *scan_state, const uint8_t *buffer, size_t buffer_size, libsigscan_error_t **error"
.Ft int
.Fn libsigscan_scanner_scan_file "libsigscan_scanner_t *scanner, libsigscan_scan_state_t *scan_state, const char *filename, libsigscan_error_t **error"
.Pp
Available when compiled with wide character string support:
.Ft int
.Fn libsigscan_scanner_scan_file_wide "libsigscan_scanner_t *scanner, libsigscan_scan_state_t *scan_state, const wchar_t *filename, libsigscan_error_t **error"
.Pp
Available when compiled with libbfio support:
.Ft int
.Fn libsigscan_scanner_scan_file_io_handle "libsigscan_scanner_t *scanner, libsigscan_scan_state_t *scan_state, libbfio_handle_t *file_io_handle, libsigscan_error_t **error"
.Pp
Scan state functions
.Ft int
.Fn libsigscan_scan_state_initialize "libsigscan_scan_state_t **scan_state, libsigscan_error_t **error"
.Ft int
.Fn libsigscan_scan_state_free "libsigscan_scan_state_t **scan_state, libsigscan_error_t **error"
.Ft int
.Fn libsigscan_scan_state_set_data_size "libsigscan_scan_state_t *scan_state, size64_t data_size, libsigscan_error_t **error"
.Ft int
.Fn libsigscan_scan_state_get_number_of_results "libsigscan_scan_state_t *scan_state, int *number_of_results, libsigscan_error_t **error"
.Ft int
.Fn libsigscan_scan_state_get_result "libsigscan_scan_state_t *scan_state, int result_index, libsigscan_scan_result_t **scan_result, libsigscan_error_t **error"
.Pp
Scan result functions
.Ft int
.Fn libsigscan_scan_result_free "libsigscan_scan_result_t **scan_result, libsigscan_error_t **error"
.Ft int
.Fn libsigscan_scan_result_get_identifier_size "libsigscan_scan_result_t *scan_result, size_t *identifier_size, libsigscan_error_t **error"
.Ft int
.Fn libsigscan_scan_result_get_identifier "libsigscan_scan_result_t *scan_result, char *identifier, size_t identifier_size, libsigscan_error_t **error"
.Sh DESCRIPTION
The
.Fn libsigscan_get_version
function is used to retrieve the library version.
.Sh RETURN VALUES
Most of the functions return NULL or \-1 on error, dependent on the return type.
For the actual return values see "libsigscan.h".
.Sh ENVIRONMENT
None
.Sh FILES
None
libsigscan allows to be compiled with wide character support (wchar_t).
To compile libsigscan with wide character support use:
.Ar ./configure --enable-wide-character-type=yes
or define:
.Ar _UNICODE
or
.Ar UNICODE
during compilation.
.Ar LIBSIGSCAN_WIDE_CHARACTER_TYPE
in libsigscan/features.h can be used to determine if libsigscan was compiled with wide character support.
.Sh BUGS
Please report bugs of any kind on the project issue tracker: https://github.com/libyal/libsigscan/issues
.Sh AUTHOR
These man pages are generated from "libsigscan.h".
.Sh COPYRIGHT
Copyright (C) 2014-2017, Joachim Metz <joachim.metz@gmail.com>.
This is free software; see the source for copying conditions.
There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
.Sh SEE ALSO
the libsigscan.h include file
|