diff --git a/.gitattributes b/.gitattributes new file mode 100644 index 0000000..63f7d1d --- /dev/null +++ b/.gitattributes @@ -0,0 +1 @@ +Cargo.lock -merge linguist-generated=false diff --git a/Cargo.lock b/Cargo.lock index 44aeb37..b9200a6 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -621,6 +621,26 @@ dependencies = [ "num-traits", ] +[[package]] +name = "bindgen" +version = "0.70.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f49d8fed880d473ea71efb9bf597651e77201bdd4893efe54c9e5d65ae04ce6f" +dependencies = [ + "bitflags 2.6.0", + "cexpr", + "clang-sys", + "itertools", + "log", + "prettyplease", + "proc-macro2", + "quote", + "regex", + "rustc-hash", + "shlex", + "syn 2.0.77", +] + [[package]] name = "bitflags" version = "1.3.2" @@ -901,6 +921,15 @@ version = "1.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "6d43a04d8753f35258c91f8ec639f792891f748a1edbd759cf1dcea3382ad83c" +[[package]] +name = "cexpr" +version = "0.6.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6fac387a98bb7c37292057cffc56d62ecb629900026402633ae9160df93a8766" +dependencies = [ + "nom 7.1.3", +] + [[package]] name = "cfb" version = "0.7.3" @@ -961,6 +990,17 @@ dependencies = [ "windows-targets 0.52.6", ] +[[package]] +name = "clang-sys" +version = "1.8.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0b023947811758c97c59bf9d1c188fd619ad4718dcaa767947df1cadb14f39f4" +dependencies = [ + "glob", + "libc", + "libloading 0.8.5", +] + [[package]] name = "clap" version = "2.34.0" @@ -1923,6 +1963,16 @@ dependencies = [ "libc", ] +[[package]] +name = "fsv-sys" +version = "0.1.0" +dependencies = [ + "bindgen", + "libc", + "libloading 0.8.5", + "thiserror", +] + [[package]] name = "fuchsia-zircon" version = "0.3.3" @@ -2782,6 +2832,15 @@ version = "1.70.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "7943c866cc5cd64cbc25b2e01621d07fa8eb2a1a23160ee81ce38704e97b8ecf" +[[package]] +name = "itertools" +version = "0.13.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "413ee7dfc52ee1a4949ceeb7dbc8a33f2d6c088194d9f922fb8318faf1f01186" +dependencies = [ + "either", +] + [[package]] name = "itoa" version = "0.4.8" @@ -2949,15 +3008,15 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "6e9ec52138abedcc58dc17a7c6c0c00a2bdb4f3427c7f63fa97fd0d859155caf" dependencies = [ "gtk-sys", - "libloading", + "libloading 0.7.4", "once_cell", ] [[package]] name = "libc" -version = "0.2.158" +version = "0.2.159" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d8adc4bb1803a324070e64a98ae98f38934d91957a99cfb3a43dcbc01bc56439" +checksum = "561d97a539a36e26a9a5fad1ea11a3039a67714694aaa379433e580854bc3dc5" [[package]] name = "libloading" @@ -2969,6 +3028,16 @@ dependencies = [ "winapi 0.3.9", ] +[[package]] +name = "libloading" +version = "0.8.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4979f22fdb869068da03c9f7528f8297c6fd2606bc3a4affe42e6a823fdb8da4" +dependencies = [ + "cfg-if 1.0.0", + "windows-targets 0.52.6", +] + [[package]] name = "libm" version = "0.2.8" @@ -4183,6 +4252,16 @@ version = "0.1.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "925383efa346730478fb4838dbe9137d2a47675ad789c546d150a6e1dd4ab31c" +[[package]] +name = "prettyplease" +version = "0.2.22" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "479cf940fbbb3426c32c5d5176f62ad57549a0bb84773423ba8be9d089f5faba" +dependencies = [ + "proc-macro2", + "syn 2.0.77", +] + [[package]] name = "proc-macro-crate" version = "1.3.1" @@ -4578,6 +4657,12 @@ version = "0.1.24" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "719b953e2095829ee67db738b3bfa9fa368c94900df327b3f07fe6e794d2fe1f" +[[package]] +name = "rustc-hash" +version = "1.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "08d43f7aa6b08d49f382cde6a7982047c3426db949b1424bc4b7ec9ae12c6ce2" + [[package]] name = "rustc_version" version = "0.4.1" diff --git a/Cargo.toml b/Cargo.toml index be7312c..5c19dfc 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -4,6 +4,7 @@ members = [ "crates/backend", "crates/desktop", "crates/sesam-vitale", + "crates/fsv-sys", "crates/utils", "migration", "entity", diff --git a/README.md b/README.md index 6e649b2..fe83c6a 100644 --- a/README.md +++ b/README.md @@ -9,6 +9,7 @@ Logiciel de Pharmacie libre et open-source. - `crates/desktop`: Client desktop propulsé par Tauri, exposant le `frontend` - `crates/sesam-vitale`: Bibliothèque de gestion des services SESAM-Vitale (Lecture des cartes CPS et Vitale, téléservices ...) - `crates/utils`: Bibliothèque de fonctions utilitaires + - `crates/fsv-sys`: Bindings Rust pour les librairies dynamiques FSV (SESAM-Vitale) - `frontend`: Interface web du logiciel, propulsée par Nuxt.js ## Installation @@ -61,9 +62,9 @@ Toutefois, l'usage de la CLI de SeaORM nécessite de renseigner les informations > Astuce : utilisé un lien symbolique pour éviter de dupliquer le fichier `.env`. -#### SESAM-Vitale +#### FSV-sys -La crate `sesam-vitale` nécessite la présence des librairies dynamiques fournies par le package FSV et la CryptolibCPS. Les instructions d'installation sont disponibles dans le [README](crates/sesam-vitale/README.md) de la crate `sesam-vitale`. +La crate `fsv-sys` nécessite la présence des librairies fournies par le package FSV et la CryptolibCPS. Les instructions d'installation sont disponibles dans le [README](crates/sesam-vitale/README.md) de la crate `fsv-sys`. #### Backend Hot-reload diff --git a/crates/fsv-sys/Cargo.toml b/crates/fsv-sys/Cargo.toml new file mode 100644 index 0000000..354cc42 --- /dev/null +++ b/crates/fsv-sys/Cargo.toml @@ -0,0 +1,18 @@ +[package] +name = "fsv-sys" +version = "0.1.0" +edition = "2021" + +links = "ssvlux64,ssvosx,Ssvw64" +# Linux: Libssvlux64.so +# Windows: Ssvw64.dll +# macOS: ssvosx.framework + +[dependencies] +libc = "0.2.159" +libloading = "0.8.5" + +thiserror.workspace = true + +[build-dependencies] +bindgen = "0.70.1" diff --git a/crates/fsv-sys/README.md b/crates/fsv-sys/README.md new file mode 100644 index 0000000..4c32e8b --- /dev/null +++ b/crates/fsv-sys/README.md @@ -0,0 +1,23 @@ +# FSV-sys, bindings Rust pour le package FSV SESAM-Vitale + +## Utilisation + +### Pré-requis + +- Installer le [package FSV](https://industriels.sesam-vitale.fr/group/fournitures-sesam-vitale) + - Les librairies dynamiques (.lib, .dll, ...) fournies ne sont pas installés dans les emplacements standard du système, il faudra donc configurer leur chemin d'installation dans le fichier de configuration `.env.build` (voir ci-dessous) + - Le détail des chemins d'installation est donné dans la documentation du package FSV `fsv-mi-004_pack-FSV1.40.14_V2.3.pdf` + - Linux - par défaut : `/opt/santesocial/fsv/1.40.13/lib` + - Windows - par défaut : `C:\Program Files\santesocial\santesocial\fsv\1.40.14\lib` (ou dans Program Files (x86) si c'est le package 32bits qui a été installé) + +- Installer la [CryptolibCPS](https://industriels.sesam-vitale.fr/group/galss-cryptolib-cps) + - Ce package fourni également l'utilitaire "CPS Gestion" pour obtenir des informations sur le lecteur de carte, etc. + - Linux : `cpgeslux` + - Windows : `...` + +## Développement + +### Pré-requis + +- Pour la génération des bindings lors de la phase de `build` à l'aide de `bindgen`, il est nécessaire d'avoir installé `clang` ([documentation](https://rust-lang.github.io/rust-bindgen/requirements.html)). + diff --git a/crates/fsv-sys/build.rs b/crates/fsv-sys/build.rs new file mode 100644 index 0000000..40a2d5f --- /dev/null +++ b/crates/fsv-sys/build.rs @@ -0,0 +1,59 @@ +use std::{env, path::PathBuf}; + +fn main() { + // Configure for various targets + let target_code; + + // Use CARGO configuration env Variable, because !cfg(target_os) is not available in build.rs + // Source: https://kazlauskas.me/entries/writing-proper-buildrs-scripts + let target = env::var("TARGET").expect("TARGET not set"); + let target_os = env::var("CARGO_CFG_TARGET_OS"); + + println!("Target: {:?}", target); + + match target_os.as_ref().map(|x| &**x) { + Ok("linux") => { + println!("Building for Linux"); + // lib_name = "ssvlux64"; + target_code = "linux"; + }, + Ok("windows") => { + println!("Building for Windows"); + // lib_name = "Ssvw64"; + target_code = "win"; + }, + Ok("macos") => { + println!("Building for MacOS"); + // lib_name = "ssvosx"; + target_code = "macosx"; + }, + tos => panic!("Unsupported target_os {:?}", tos), + } + + // Link the library + // println!("cargo:rustc-link-lib={}", lib_name); + + // Build the bindings + let wrapper_path = format!("vendor/fsv/1.40.14.13/includes/wrapper.{}.h", target_code); + let bindings = bindgen::Builder::default() + // The input header we would like to generate + // bindings for. + .header(wrapper_path) + // To generate the bindings for specific target + .clang_arg(format!("--target={}", target)) + // Limit the bindings generation to the SSV_ prefix + .allowlist_item("SSV_.*") + // Tell cargo to invalidate the built crate whenever any of the + // included header files changed. + .parse_callbacks(Box::new(bindgen::CargoCallbacks::new())) + // Finish the builder and generate the bindings. + .generate() + // Unwrap the Result and panic on failure. + .expect("Unable to generate bindings"); + + // Write the bindings to the $OUT_DIR/bindings.rs file. + let out_path = PathBuf::from(env::var("OUT_DIR").unwrap()); + bindings + .write_to_file(out_path.join("bindings.rs")) + .expect("Couldn't write bindings!"); +} \ No newline at end of file diff --git a/crates/fsv-sys/src/lib.rs b/crates/fsv-sys/src/lib.rs new file mode 100644 index 0000000..6e2d341 --- /dev/null +++ b/crates/fsv-sys/src/lib.rs @@ -0,0 +1,130 @@ +#![allow(non_upper_case_globals)] +#![allow(non_camel_case_types)] +#![allow(non_snake_case)] + +pub mod BINDINGS { + include!(concat!(env!("OUT_DIR"), "/bindings.rs")); +} + +// We need to keep the this use statement to get `ssv_function` macro working well +use BINDINGS::*; + +/// Macro to generate a function that implements a call to an external function in BINDINGS +macro_rules! ssv_function { + ($binding:ty, $func_name:ident, {$($arg_name:ident: $arg_type:ty),*}) => { + /// # Safety + /// This function is unsafe because it calls an external function through FFI. + /// The caller must ensure that the provided arguments are valid and that the + /// external function is safe to call. + pub unsafe fn $func_name(&self, $($arg_name: $arg_type),*) -> Result { + let func_struct: libloading::Symbol<'_, $binding> = + unsafe { self.library.get(stringify!($binding).as_bytes())? }; + let func = match *func_struct { + Some(func) => func, + None => return Err(Error::SymbolMissing(stringify!($binding))), + }; + Ok(func($($arg_name),*)) + } + }; +} + +#[derive(thiserror::Error, Debug)] +pub enum Error { + #[error(transparent)] + LibLoading(#[from] libloading::Error), + #[error("Symbol missing: {0}")] + SymbolMissing(&'static str), +} + +/// Wrapper around the SESAM-VITALE library +/// This struct is responsible for loading the library and providing an interface to call its functions. +/// The library is loaded at creation and kept in memory until the struct is dropped. +#[derive(Debug)] +pub struct SSVLibrary { + library: libloading::Library, +} + +pub fn get_library_path() -> String { + // TODO : Use libloading::library_filename to get platform-specific filename ? + "/opt/santesocial/fsv/1.40.13/lib/libssvlux64.so".to_string() +} + +impl SSVLibrary { + pub fn new(library_path: &str) -> Result { + let library = unsafe { libloading::Library::new(library_path)? }; + Ok(SSVLibrary { library }) + } + + pub fn library(&self) -> &libloading::Library { + &self.library + } + + ssv_function!(SSV_InitLIB2, ssv_init_lib2, { + pcFichierSesam: *const i8 + }); + + ssv_function!(SSV_LireConfig, ssv_lire_config, { + pZDataOut: *mut *mut libc::c_void, + psTailleDataOut: *mut usize + }); + + ssv_function!(SSV_LireCartePS, ssv_lire_carte_ps, { + NomRessourcePS: *const i8, + NomRessourceLecteur: *const i8, + CodePorteurPS: *const i8, + pZDataOut: *mut *mut libc::c_void, + pTailleZone: *mut usize + }); +} + +#[cfg(test)] +mod test { + use std::{ffi::CString, ptr}; + + use super::*; + + #[test] + fn test_initlib2() { + let library_path = get_library_path(); + let ssv_library = SSVLibrary::new(&library_path).expect("SSVLibrary::new failed"); + + let sesam_ini_str = CString::new("/etc/opt/santesocial/fsv/1.40.13/conf/sesam.ini") + .expect("CString::new failed"); + let result = unsafe { ssv_library.ssv_init_lib2(sesam_ini_str.as_ptr()) }.unwrap(); + assert_eq!(result, 0); + } + + #[test] + fn test_lire_config_and_carte_ps() { + let library_path = get_library_path(); + let ssv_library = SSVLibrary::new(&library_path).expect("SSVLibrary::new failed"); + + let sesam_ini_str = CString::new("/etc/opt/santesocial/fsv/1.40.13/conf/sesam.ini") + .expect("CString::new failed"); + let result = unsafe { ssv_library.ssv_init_lib2(sesam_ini_str.as_ptr()) }.unwrap(); + assert_eq!(result, 0); + + let mut buffer_ptr: *mut libc::c_void = ptr::null_mut(); + let mut size: libc::size_t = 0; + let result = unsafe { ssv_library.ssv_lire_config(&mut buffer_ptr, &mut size) }.unwrap(); + assert_eq!(result, 0); + + let nom_ressource_ps = CString::new("Gemalto PC Twin Reader (645D94C3) 00 00") + .expect("CString::new failed"); + let nom_ressource_lecteur = CString::new("Gemalto PC Twin Reader (645D94C3) 00 00") + .expect("CString::new failed"); + let code_porteur_ps = CString::new("1234").expect("CString::new failed"); + let mut buffer_ptr: *mut libc::c_void = ptr::null_mut(); + let mut size: libc::size_t = 0; + let result = unsafe { + ssv_library.ssv_lire_carte_ps( + nom_ressource_ps.as_ptr(), + nom_ressource_lecteur.as_ptr(), + code_porteur_ps.as_ptr(), + &mut buffer_ptr, + &mut size, + ) + }.unwrap(); + assert_eq!(result, 0); + } +} diff --git a/crates/fsv-sys/vendor/fsv/1.40.14.13/includes/SGD/sgd.h b/crates/fsv-sys/vendor/fsv/1.40.14.13/includes/SGD/sgd.h new file mode 100644 index 0000000..d7b9520 --- /dev/null +++ b/crates/fsv-sys/vendor/fsv/1.40.14.13/includes/SGD/sgd.h @@ -0,0 +1,123 @@ +/* + * ------------------------------------------------------------------- + * (c) 2001 GIE SESAM-VITALE + * + * PROJET : Services de Gestion de Donnees + * + * FICHIER : sgd.h (v4) + * + * Declaration des prototypes des fonctions SGD pour les progiciels. + * ------------------------------------------------------------------- + */ + +#ifndef __SGD_H__ +#define __SGD_H__ + +#ifdef __cplusplus +extern "C" { +#endif + +/* + * Inclusions + */ +#include +#include "mc_sys_def.h" + +/* Reservation d'un session d'echange. */ +extern unsigned short API_ENTRY SGD_ReserverSession (size_t Taille, unsigned short* NumeroSession); + +/* Redimensionnement d'une zone d'entree interne. */ +extern unsigned short API_ENTRY +SGD_RedimensionnerBuffer (unsigned short NumeroSession, + size_t NouvelleTaille); + +/* Liberation d'une session d'echange. */ +extern unsigned short API_ENTRY +SGD_LibererSession (unsigned short NumeroSession); + +/* Ajout d'un groupe. */ +extern unsigned short API_ENTRY +SGD_AjouterGroupe (unsigned short NumeroSession, + unsigned short IdGroupe); + +/* Ajout d'un champ. */ +extern unsigned short API_ENTRY +SGD_AjouterChamp (unsigned short NumeroSession, + const char* ValeurChamp); + +/* Ajout d'un champ d'octets. */ +extern unsigned short API_ENTRY +SGD_AjouterChampBin (unsigned short NumeroSession, + const char* ValeurChamp, + size_t TailleChamp); + +/* Ajout d'un champ d'octets d'un Fichier. */ +extern unsigned short API_ENTRY +SGD_AjouterChampFichier (unsigned short NumeroSession, + const char* NomFichier); + +/* Lecture du numero du groupe suivant. */ +extern unsigned short API_ENTRY +SGD_LireGroupeSuivant (unsigned short NumeroSession, + unsigned short IdGroupeCourant, + unsigned short OccurrenceGroupeCourant, + unsigned short* IdGroupeSuivant, + unsigned short* OccurrenceGroupeSuivant); + +/* Lecture d'un champ. */ +extern unsigned short API_ENTRY +SGD_LireChamp (unsigned short NumeroSession, + unsigned short IdGroupe, + unsigned short OccurrenceGroupe, + unsigned short NumeroChamp, + char* ValeurChamp, + size_t* TailleMax); + +/* Lecture d'un champ d'octets. */ +extern unsigned short API_ENTRY +SGD_LireChampBin (unsigned short NumeroSession, + unsigned short IdGroupe, + unsigned short OccurrenceGroupe, + unsigned short NumeroChamp, + char* ValeurChamp, + size_t* TailleMax); + +/* Lecture d'un champ vers un fichier. */ +extern unsigned short API_ENTRY +SGD_LireChampFichier (unsigned short NumeroSession, + unsigned short IdGroupe, + unsigned short OccurrenceGroupe, + unsigned short NumeroChamp, + const char* NomFichier); + +/* Activation de la trace. */ +extern unsigned short API_ENTRY +SGD_InitTrace (const char* NomFichier, + const char* ModeOuverture, + unsigned short Module, + unsigned char Niveau); + +/*Initialisation de SGD*/ +unsigned short API_ENTRY SGD_Init(const char *fichierSesam); + +/* Transmission de la zone d'entrée. */ +extern unsigned short API_ENTRY SGD_LireZoneIn(unsigned short NumeroSession, + void** ZDonneesEntree, + size_t* TailleDonneesEntree); + +/* Transmission de la zone de sortie. */ +typedef void (API_ENTRY *LibererZoneMem) (void* Zone); + + +extern unsigned short API_ENTRY SGD_EcrireZoneOut(unsigned short NumeroSession, + void* ZDonneesSortie, + size_t TailleDonneesSortie, + LibererZoneMem Fonction); + + + +#ifdef __cplusplus +} +#endif + +#endif diff --git a/crates/fsv-sys/vendor/fsv/1.40.14.13/includes/SRT/srt.h b/crates/fsv-sys/vendor/fsv/1.40.14.13/includes/SRT/srt.h new file mode 100644 index 0000000..0e30d7b --- /dev/null +++ b/crates/fsv-sys/vendor/fsv/1.40.14.13/includes/SRT/srt.h @@ -0,0 +1,176 @@ +/* + * ------------------------------------------------------------------- + * (c) 2001-2003 GIE SESAM-VITALE + * + * PROJET : Services Reglementation et Tarification + * + * FICHIER : srt.h (v5) + * + * Declaration des prototypes des fonctions SRT + * ------------------------------------------------------------------- + */ + +#ifndef __SRT_H__ +#define __SRT_H__ + +#ifdef __cplusplus +extern "C" { +#endif + + + /* + * Inclusions + */ +#include +/* Inclure le fichier de déclarations spécifiques système : win32def.h, macosdef.h, unixdef.h, etc. */ + + +/* +* Declarations des fonctions publiques "standards" +*/ + +/* Recherche de codes CCAM par mot cle. */ +typedef unsigned short (API_ENTRY FARPTR SRT_RechercherParMotCle) + (const char* MotCle, + unsigned long CadreRecherche, + void** ZDonneesSortie, + size_t* TailleDonneesSortie); + +/* Recherche de codes CCAM par filtre. */ +typedef unsigned short (API_ENTRY FARPTR SRT_RechercherParFiltre) + (const char* Filtre, + void** ZDonneesSortie, + size_t* TailleDonneesSortie); + +/* Consultation de donnees CCAM. */ +typedef unsigned short (API_ENTRY FARPTR SRT_ConsulterDonnee) + (const char* Identifiant, + const char* DateReference, + void* ZDonneesEntree, + size_t TailleDonneesEntree, + void** ZDonneesSortie, + size_t* TailleDonneesSortie); + +/* Modification d'un champ mono-occurrent. */ +typedef unsigned short (API_ENTRY FARPTR SRT_ModifierDonnee) + (const char* Identifiant, + const char* DateEffet, + void* ZDonneesEntree, + size_t TailleDonneesEntree); + +/* Annulation d'une modification */ +typedef unsigned short (API_ENTRY FARPTR SRT_AnnulerModification) + (const char* Identifiant, + void* ZDonneesEntree, + size_t TailleDonneesEntree); + +/* Controle de la validite d'une ou plusieurs donnees. */ +typedef unsigned short (API_ENTRY FARPTR SRT_ControlerDonnees) + (const char* Identifiant, + const char* DateReference, + void* ZDonneesEntree, + size_t TailleDonneesEntree, + unsigned char* Resultat); + +/* Regle de gestion ou de tarification. */ +typedef unsigned short (API_ENTRY FARPTR SRT_AppliquerRegle) + (const char* Identifiant, + void* ZDonneesEntree, + size_t TailleDonneesEntree, + void** ZDonneesSortie, + size_t* TailleDonneesSortie); + +/* Controle complet. */ +typedef unsigned short (API_ENTRY FARPTR SRT_ControleComplet) + (void* ZDonneesEntree, + size_t TailleDonneesEntree, + void** ZDonneesSortie, + size_t* TailleDonneesSortie); + +/* Chargement du referentiel. */ +typedef unsigned short (API_ENTRY FARPTR SRT_InitLIB2)(const char* SesamIni); + +/* Dechargement du referentiel. */ +typedef unsigned short (API_ENTRY FARPTR SRT_TermLIB)(void); + +/* Sauvegarde des modifications. */ +typedef unsigned short (API_ENTRY FARPTR SRT_SauvegarderReferentiel)(const char* Commentaire); + +/* Version du referentiel. */ +typedef unsigned short (API_ENTRY FARPTR SRT_LireVersion) + (void** ZDonneesSortie, + size_t* TailleDonneesSortie); + +/* Activation de la trace. */ +typedef unsigned short (API_ENTRY FARPTR SRT_InitTrace) + (const char* pathConf, + const char* ModeOuverture, + unsigned short Module, + unsigned char Niveau); + +/* Allocation d'une zone memoire. */ +typedef unsigned short (API_ENTRY FARPTR SRT_AllouerZoneMem) + (void** Zone, + size_t Taille); + +/* Allocation d'une zone memoire. */ +typedef void (API_ENTRY FARPTR SRT_LibererZoneMem) (void* Zone); + +/* +* Declarations des fonctions publiques "simplifiees" +*/ + +/* Recherche de codes CCAM par mot cle. */ +typedef unsigned short (API_ENTRY FARPTR SRT_RechercherParMotCle_S) + (const char* MotCle, + unsigned long CadreRecherche, + unsigned short NumeroSession); + +/* Recherche de codes CCAM par filtre. */ +typedef unsigned short (API_ENTRY FARPTR SRT_RechercherParFiltre_S) + (const char* Filtre, + unsigned short NumeroSession); + +/* Consultation de donnees CCAM. */ +typedef unsigned short (API_ENTRY FARPTR SRT_ConsulterDonnee_S) + (const char* Identifiant, + const char* DateReference, + unsigned short NumeroSession); + +/* Modification d'un champ mono-occurrent. */ +typedef unsigned short (API_ENTRY FARPTR SRT_ModifierDonnee_S) + (const char* Identifiant, + const char* DateEffet, + unsigned short NumeroSession); + +/* Annulation des modifications d'une donnee. */ +typedef unsigned short (API_ENTRY FARPTR SRT_AnnulerModification_S) + (const char* Identifiant, + unsigned short NumeroSession); + +/* Controle de la validite d'une ou plusieurs donnees. */ +typedef unsigned short (API_ENTRY FARPTR SRT_ControlerDonnees_S) + (const char* Identifiant, + const char* DateReference, + unsigned short NumeroSession, + unsigned char* Resultat); + +/* Regle de gestion ou de tarification. */ +typedef unsigned short (API_ENTRY FARPTR SRT_AppliquerRegle_S) + (const char* Identifiant, + unsigned short NumeroSession); + +/* Controle complet. */ +typedef unsigned short (API_ENTRY FARPTR SRT_ControleComplet_S) + (unsigned short NumeroSession); + +/* Version du referentiel. */ +typedef unsigned short (API_ENTRY FARPTR SRT_LireVersion_S) + (unsigned short NumeroSession); + + +#ifdef __cplusplus +} +#endif + +#endif diff --git a/crates/fsv-sys/vendor/fsv/1.40.14.13/includes/SSV/pourFSV1.40.13/ssv.h b/crates/fsv-sys/vendor/fsv/1.40.14.13/includes/SSV/pourFSV1.40.13/ssv.h new file mode 100644 index 0000000..2a46c9d --- /dev/null +++ b/crates/fsv-sys/vendor/fsv/1.40.14.13/includes/SSV/pourFSV1.40.13/ssv.h @@ -0,0 +1,327 @@ +/* + * ------------------------------------------------------------------- + * (c) 2001-2003 GIE SESAM-VITALE + * + * PROJET : Services SESAM Vitale + * + * FICHIER : ssv.h + * + * Declaration des prototypes des fonctions SSV + * ------------------------------------------------------------------- + */ + +#ifndef __SSV_H__ +#define __SSV_H__ + +#ifdef __cplusplus +extern "C" { +#endif + + +/* + * Inclusions + */ +#include +/* Inclure le fichier de déclarations spécifiques système : + win32def.h, macosdef.h, aixdef.h, etc. */ + + +/****** FONCTIONS STANDARDS *********/ + +typedef unsigned short (API_ENTRY FARPTR SSV_TraduireARL) + (short NbZDataIn, + void FARPTR FARPTR TZDataIn, + size_t FARPTR TTailleZoneIn, + void FARPTR FARPTR pZDataOut, + size_t FARPTR pTailleZoneOut); + +typedef unsigned short (API_ENTRY FARPTR SSV_LireCartePS) + (const char FARPTR NomRessourcePS, + const char FARPTR NomRessourceLecteur, + const char FARPTR CodePorteurPS, + void FARPTR FARPTR pZDataOut, + size_t FARPTR pTailleZone); + +typedef unsigned short (API_ENTRY FARPTR SSV_LireConfig) + (void FARPTR FARPTR pZDataOut, + size_t FARPTR psTailleDataOut); + +typedef unsigned short (API_ENTRY FARPTR SSV_FormaterFactures) + (const char FARPTR NomRessourcePS, + const char FARPTR NomRessourceLecteur, + const char FARPTR CodePorteurPS, + char cFactureACreer, + char cModeSecur, + void FARPTR pZDataIn, + size_t TailleDataIn, + void FARPTR FARPTR pZDataOut, + size_t FARPTR pTailleZone); + +typedef unsigned short (API_ENTRY FARPTR SSV_FormaterLot) + ( const char FARPTR NomRessourcePS, + const char FARPTR NomRessourceLecteur, + const char FARPTR CodePorteurPS, + short NBZDataIn, + void FARPTR FARPTR TZDataIn, + size_t FARPTR TTailleZoneIn, + short FARPTR pNbZDataOut, + void FARPTR FARPTR TZDataOut, + size_t FARPTR TTailleZoneOut); + +typedef unsigned short (API_ENTRY FARPTR SSV_FormaterFichier) + (void FARPTR pZDataIn,size_t TailleDataIn, + void FARPTR FARPTR pZDataOut,size_t FARPTR pTailleZone); + + +typedef unsigned short (API_ENTRY FARPTR SSV_InitTrace) + (char FARPTR pathConf, char FARPTR ModeOuverture, + unsigned short Module, unsigned char Niveau); + + +typedef unsigned short (API_ENTRY FARPTR SSV_AllouerZoneMem) + (void FARPTR FARPTR pZDataIn, + size_t taille); + +typedef void (API_ENTRY FARPTR SSV_LibererZoneMem) + (void FARPTR pZone); + +typedef unsigned short (API_ENTRY FARPTR SSV_MajDateLecteur) + (const char FARPTR pcNomRessourceLecteur, + const char FARPTR pcDateHeure); + +typedef unsigned short (API_ENTRY FARPTR SSV_LireDateLecteur) + (const char FARPTR pcNomRessourceLecteur, + char FARPTR pcDateHeure); + + +typedef unsigned short (API_ENTRY FARPTR SSV_LireDroitsVitale) + (const char FARPTR NomRessourcePS, + const char FARPTR NomRessourceLecteur, + const char FARPTR CodePorteurPS, + const char FARPTR DateConsultation, + void FARPTR FARPTR pZDataOut, + size_t FARPTR pTailleZone); + + +typedef unsigned short (API_ENTRY FARPTR SSV_IdentifierTLA) + (const char FARPTR pcNomRessourceLecteur, + const char FARPTR NumVersionCDC, + void FARPTR FARPTR pZDataOut, + size_t FARPTR tailleDataOut); + +typedef unsigned short (API_ENTRY FARPTR SSV_DechargerFacturesPdT) + ( const char FARPTR NomRessourcePS, + const char FARPTR NomRessourceLecteur, + const char FARPTR CodePorteurPS, + const char FARPTR pcNumFact, + short sNbZDataIn, + void FARPTR FARPTR pvTZDataIn, + size_t FARPTR psTTailleDataIn, + short FARPTR pNbZDataOut, + void FARPTR FARPTR TZDataOut, + size_t FARPTR TTailleZoneOut); + +typedef unsigned short (API_ENTRY FARPTR SSV_DechargerFSETLA) + ( const char FARPTR NomRessourcePS, + const char FARPTR NomRessourceLecteur, + const char FARPTR CodePorteurPS, + const char FARPTR pcNumFact, + short FARPTR pNbZDataOut, + void FARPTR FARPTR TZDataOut, + size_t FARPTR TTailleZoneOut); + +typedef unsigned short (API_ENTRY FARPTR SSV_DechargerFSETLANC) + ( const char FARPTR NomRessourcePS, + const char FARPTR NomRessourceLecteur, + const char FARPTR CodePorteurPS, + const char FARPTR pcNumFact, + short FARPTR pNbZDataOut, + void FARPTR FARPTR TZDataOut, + size_t FARPTR TTailleZoneOut); +typedef unsigned short (API_ENTRY FARPTR SSV_EffacerTLA) + (const char FARPTR NomRessourcePS, + const char FARPTR NomRessourceLecteur, + const char FARPTR CodePorteurPS, + const char FARPTR cNumFacturation, + const char FARPTR cTypeDonnee); + +typedef unsigned short (API_ENTRY FARPTR SSV_ChargerFacturesPdT) + (const char FARPTR pcNomRessourceLecteur, + const char FARPTR pcNumFacturation, + short sNbZDataIn, + void FARPTR FARPTR pvTZDataIn, + size_t FARPTR psTTailleDataIn, + short FARPTR pNbZDataOut, + void FARPTR FARPTR TZDataOut, + size_t FARPTR TTailleZoneOut); + +typedef unsigned short (API_ENTRY FARPTR SSV_ChargerAppli) + (const char FARPTR pcNomRessourceLecteur, + short sNbZDataIn, + void FARPTR FARPTR pvTZDataIn, + size_t FARPTR psTTailleDataIn); + +typedef unsigned short (API_ENTRY FARPTR SSV_ChargerDonneesTLA) + (const char FARPTR pcNomRessourceLecteur, + short sNbZDataIn, + void FARPTR FARPTR pvTZDataIn, + size_t FARPTR psTTailleDataIn); + +typedef unsigned short (API_ENTRY FARPTR SSV_DechargerBeneficiaires) + (const char FARPTR NomRessourcePS, + const char FARPTR NomRessourceLecteur, + const char FARPTR CodePorteurPS, + const char FARPTR cNumFacturation, + short FARPTR sNbZDataOut, + void FARPTR FARPTR pTZDataOut, + size_t FARPTR sTTailleDataOut); + +typedef unsigned short (API_ENTRY FARPTR SSV_TraduireFSE) + (void FARPTR pZDataIn, + size_t TailleDataIn, + void FARPTR FARPTR pZDataOut, + size_t FARPTR pTailleZone); + +typedef unsigned short (API_ENTRY FARPTR SSV_SecuriserFacture) + (const char FARPTR pcNomRessourcePS, + const char FARPTR pcNomRessourceLecteur, + const char FARPTR pcCodePorteurPS, + char cNologSituation, + const char FARPTR pcNumFact, + void FARPTR pvDataIn, + size_t szTailleDataIn , + void FARPTR FARPTR pvDataOut, + size_t FARPTR pszTailleDataOut); + +typedef unsigned short (API_ENTRY FARPTR SSV_InitLIB2) (const char FARPTR pcFichierSesam); + +typedef unsigned short (API_ENTRY FARPTR SSV_TermLIB)(); + + + +/****** FONCTIONS SIMPLIFIEES *********/ + +typedef unsigned short (API_ENTRY FARPTR SIS_TraduireARL) + (unsigned short numeroSession); + +typedef unsigned short (API_ENTRY FARPTR SIS_LireCartePS) + (const char FARPTR NomRessourcePS, + const char FARPTR NomRessourceLecteur, + const char FARPTR CodePorteurPS, + unsigned short numeroSession); + +typedef unsigned short (API_ENTRY FARPTR SIS_LireConfig) + (unsigned short numeroSession); + + +typedef unsigned short (API_ENTRY FARPTR SIS_FormaterFactures) + (const char FARPTR NomRessourcePS, + const char FARPTR NomRessourceLecteur, + const char FARPTR CodePorteurPS, + char cFacturesACreer, + char ModeSecur, + unsigned short numeroSession); + +typedef unsigned short (API_ENTRY FARPTR SIS_FormaterLot) + ( const char FARPTR NomRessourcePS, + const char FARPTR NomRessourceLecteur, + const char FARPTR CodePorteurPS, + unsigned short numeroSession); + +typedef unsigned short (API_ENTRY FARPTR SIS_FormaterFichier) + (unsigned short numeroSession); + +typedef unsigned short (API_ENTRY FARPTR SIS_InitTrace) + (char FARPTR NomFichier, char FARPTR ModeOuverture, + unsigned short Module, unsigned char Niveau); + + +typedef unsigned short (API_ENTRY FARPTR SIS_MajDateLecteur) + (const char FARPTR pcNomRessourceLecteur, + const char FARPTR pcDateHeure); + +typedef unsigned short (API_ENTRY FARPTR SIS_LireDateLecteur) + (const char FARPTR pcNomRessourceLecteur, + char FARPTR pcDateHeure); + + +typedef unsigned short (API_ENTRY FARPTR SIS_LireDroitsVitale) + (const char FARPTR NomRessourcePS, + const char FARPTR NomRessourceLecteur, + const char FARPTR CodePorteurPS, + const char FARPTR DateConsultation, + unsigned short numeroSession); + +typedef unsigned short (API_ENTRY FARPTR SIS_IdentifierTLA) + (const char FARPTR pcNomRessourceLecteur, + const char FARPTR NumVersionCDC, + unsigned short numeroSession ); + +typedef unsigned short (API_ENTRY FARPTR SIS_DechargerFacturesPdT) + ( const char FARPTR NomRessourcePS, + const char FARPTR NomRessourceLecteur, + const char FARPTR CodePorteurPS, + const char FARPTR pcNumFact, + unsigned short numeroSession); + +typedef unsigned short (API_ENTRY FARPTR SIS_DechargerFSETLA) + (const char FARPTR NomRessourcePS, + const char FARPTR NomRessourceLecteur, + const char FARPTR CodePorteurPS, + const char FARPTR pcNumFact, + unsigned short numeroSession); + +typedef unsigned short (API_ENTRY FARPTR SIS_DechargerFSETLANC) + (const char FARPTR NomRessourcePS, + const char FARPTR NomRessourceLecteur, + const char FARPTR CodePorteurPS, + const char FARPTR pcNumFact, + unsigned short numeroSession); +typedef unsigned short (API_ENTRY FARPTR SIS_EffacerTLA) + (const char FARPTR NomRessourcePS, + const char FARPTR NomRessourceLecteur, + const char FARPTR CodePorteurPS, + const char FARPTR cNumFacturation, + const char FARPTR cTypeDonnee); + +typedef unsigned short (API_ENTRY FARPTR SIS_ChargerFacturesPdT) + (const char FARPTR pcNomRessourceLecteur, + const char FARPTR pcNumFacturation, + unsigned short numeroSession); + +typedef unsigned short (API_ENTRY FARPTR SIS_ChargerAppli) + (const char FARPTR pcNomRessourceLecteur, + unsigned short numeroSession); + +typedef unsigned short (API_ENTRY FARPTR SIS_ChargerDonneesTLA) + (const char FARPTR pcNomRessourceLecteur, + unsigned short numeroSession); + +typedef unsigned short (API_ENTRY FARPTR SIS_DechargerBeneficiaires) + ( const char FARPTR NomRessourcePS, + const char FARPTR NomRessourceLecteur, + const char FARPTR CodePorteurPS, + const char FARPTR cNumFacturation, + unsigned short numeroSession); + +typedef unsigned short (API_ENTRY FARPTR SIS_TraduireFSE) + (unsigned short numeroSession); + +typedef unsigned short (API_ENTRY FARPTR SIS_SecuriserFacture) + ( const char FARPTR pcNomRessourcePS, + const char FARPTR pcNomRessourceLecteur, + const char FARPTR pcCodePorteurPS, + char cNologSituation, + const char FARPTR pcNumFact, + unsigned short numeroSession); + + + + + + +#ifdef __cplusplus +} +#endif + +#endif diff --git a/crates/fsv-sys/vendor/fsv/1.40.14.13/includes/SSV/pourFSV1.40.14/ssv.h b/crates/fsv-sys/vendor/fsv/1.40.14.13/includes/SSV/pourFSV1.40.14/ssv.h new file mode 100644 index 0000000..e47b72d --- /dev/null +++ b/crates/fsv-sys/vendor/fsv/1.40.14.13/includes/SSV/pourFSV1.40.14/ssv.h @@ -0,0 +1,412 @@ +/* + * ------------------------------------------------------------------- + * (c) 2001-2003 GIE SESAM-VITALE + * + * PROJET : Services SESAM Vitale + * + * FICHIER : ssv.h + * + * Declaration des prototypes des fonctions SSV + * ------------------------------------------------------------------- + */ + +#ifndef __SSV_H__ +#define __SSV_H__ + +#ifdef __cplusplus +extern "C" { +#endif + + +/* + * Inclusions + */ +#include +/* Inclure le fichier de déclarations spécifiques système : + win32def.h, macosdef.h, aixdef.h, etc. */ + + +/****** FONCTIONS STANDARDS *********/ + +typedef unsigned short (API_ENTRY FARPTR SSV_TraduireARL) + (short NbZDataIn, + void FARPTR FARPTR TZDataIn, + size_t FARPTR TTailleZoneIn, + void FARPTR FARPTR pZDataOut, + size_t FARPTR pTailleZoneOut); + +typedef unsigned short (API_ENTRY FARPTR SSV_LireCartePS) + (const char FARPTR NomRessourcePS, + const char FARPTR NomRessourceLecteur, + const char FARPTR CodePorteurPS, + void FARPTR FARPTR pZDataOut, + size_t FARPTR pTailleZone); + +typedef unsigned short (API_ENTRY FARPTR SSV_LireConfig) + (void FARPTR FARPTR pZDataOut, + size_t FARPTR psTailleDataOut); + +typedef unsigned short (API_ENTRY FARPTR SSV_FormaterFactures) + (char cFactureACreer, + char cModeSecur, + char cTypeFlux, + void FARPTR pZDataIn, + size_t TailleDataIn, + void FARPTR FARPTR pZDataOut, + size_t FARPTR pTailleZone); + +typedef unsigned short (API_ENTRY FARPTR SSV_ChiffrerFacture) + (void * pZDataIn, + size_t TailleDataIn, + void * * pZDataOut, + size_t * pTailleZone); + +typedef unsigned short (API_ENTRY FARPTR SSV_SignerFactureVitale) + (const char * pcNomRessourceVitale, + void * pZDataIn, + size_t szTailleDataIn, + void * * pZDataOut, + size_t * pszTailleZone); + +typedef unsigned short (API_ENTRY FARPTR SSV_CalculerHashFactureAssure) + (const char * pcNumSerie, + void * pZDataIn, + size_t szTailleDataIn, + void * * pZDataOut, + size_t * pszTailleZone); + +typedef unsigned short (API_ENTRY FARPTR SSV_AjouterSignatureAssureDansFacture) + (void * pZDataIn, + size_t szTailleDataIn, + void * * pZDataOut, + size_t * pszTailleZone); + +typedef unsigned short (API_ENTRY FARPTR SSV_SignerFactureCPS) + (const char * pcNomRessourcePS, + const char * pcNomRessourceLecteur, + const char * pcCodePorteurPS, + char cNologSituation, + void * pZDataIn, + size_t szTailleDataIn, + void * * pZDataOut, + size_t * pszTailleZone); + +typedef unsigned short (API_ENTRY SSV_CalculerHashFacturePS) + (const char * pcNumSerieCPS, + void * pZDataIn, + size_t usTailleDataIn, + void * * pZDataOut, + size_t * pusTailleZone); + +typedef unsigned short (API_ENTRY SSV_AjouterSignaturePSFacture) + (void * pZDataIn, + size_t szTailleDataIn, + void * * pZDataOut, + size_t * pszTailleZone); + +typedef unsigned short (API_ENTRY FARPTR SSV_SignerLotCPS) + (const char * pcNomRessourcePS, + const char * pcNomRessourceLecteur, + const char * pcCodePorteurPS, + char cNologSituation, + void * pZDataIn, + size_t szTailleDataIn, + void * * pZDataOut, + size_t * pszTailleZone); + +typedef unsigned short (API_ENTRY FARPTR SSV_FormaterLot) + ( short NBZDataIn, + void FARPTR FARPTR TZDataIn, + size_t FARPTR TTailleZoneIn, + short FARPTR pNbZDataOut, + void FARPTR FARPTR TZDataOut, + size_t FARPTR TTailleZoneOut); + +typedef unsigned short (API_ENTRY FARPTR SSV_FormaterFichier) + (void FARPTR pZDataIn,size_t TailleDataIn, + void FARPTR FARPTR pZDataOut,size_t FARPTR pTailleZone); + + +typedef unsigned short (API_ENTRY FARPTR SSV_InitTrace) + (char FARPTR pathConf, char FARPTR ModeOuverture, + unsigned short Module, unsigned char Niveau); + + +typedef unsigned short (API_ENTRY FARPTR SSV_AllouerZoneMem) + (void FARPTR FARPTR pZDataIn, + size_t taille); + +typedef void (API_ENTRY FARPTR SSV_LibererZoneMem) + (void FARPTR pZone); + +typedef unsigned short (API_ENTRY FARPTR SSV_MajDateLecteur) + (const char FARPTR pcNomRessourceLecteur, + const char FARPTR pcDateHeure); + +typedef unsigned short (API_ENTRY FARPTR SSV_LireDateLecteur) + (const char FARPTR pcNomRessourceLecteur, + char FARPTR pcDateHeure); + + +typedef unsigned short (API_ENTRY FARPTR SSV_LireDroitsVitale) + (const char FARPTR NomRessourcePS, + const char FARPTR NomRessourceLecteur, + const char FARPTR CodePorteurPS, + const char FARPTR DateConsultation, + void FARPTR FARPTR pZDataOut, + size_t FARPTR pTailleZone); + + +typedef unsigned short (API_ENTRY FARPTR SSV_IdentifierTLA) + (const char FARPTR pcNomRessourceLecteur, + const char FARPTR NumVersionCDC, + void FARPTR FARPTR pZDataOut, + size_t FARPTR tailleDataOut); + +typedef unsigned short (API_ENTRY FARPTR SSV_DechargerFacturesPdT) + ( const char FARPTR NomRessourcePS, + const char FARPTR NomRessourceLecteur, + const char FARPTR CodePorteurPS, + const char FARPTR pcNumFact, + short sNbZDataIn, + void FARPTR FARPTR pvTZDataIn, + size_t FARPTR psTTailleDataIn, + short FARPTR pNbZDataOut, + void FARPTR FARPTR TZDataOut, + size_t FARPTR TTailleZoneOut); + +typedef unsigned short (API_ENTRY FARPTR SSV_DechargerFSETLA) + ( const char FARPTR NomRessourcePS, + const char FARPTR NomRessourceLecteur, + const char FARPTR CodePorteurPS, + const char FARPTR pcNumFact, + short FARPTR pNbZDataOut, + void FARPTR FARPTR TZDataOut, + size_t FARPTR TTailleZoneOut); + +typedef unsigned short (API_ENTRY FARPTR SSV_DechargerFSETLANC) + ( const char FARPTR NomRessourcePS, + const char FARPTR NomRessourceLecteur, + const char FARPTR CodePorteurPS, + const char FARPTR pcNumFact, + short FARPTR pNbZDataOut, + void FARPTR FARPTR TZDataOut, + size_t FARPTR TTailleZoneOut); +typedef unsigned short (API_ENTRY FARPTR SSV_EffacerTLA) + (const char FARPTR NomRessourcePS, + const char FARPTR NomRessourceLecteur, + const char FARPTR CodePorteurPS, + const char FARPTR cNumFacturation, + const char FARPTR cTypeDonnee); + +typedef unsigned short (API_ENTRY FARPTR SSV_ChargerFacturesPdT) + (const char FARPTR pcNomRessourceLecteur, + const char FARPTR pcNumFacturation, + short sNbZDataIn, + void FARPTR FARPTR pvTZDataIn, + size_t FARPTR psTTailleDataIn, + short FARPTR pNbZDataOut, + void FARPTR FARPTR TZDataOut, + size_t FARPTR TTailleZoneOut); + +typedef unsigned short (API_ENTRY FARPTR SSV_ChargerAppli) + (const char FARPTR pcNomRessourceLecteur, + short sNbZDataIn, + void FARPTR FARPTR pvTZDataIn, + size_t FARPTR psTTailleDataIn); + +typedef unsigned short (API_ENTRY FARPTR SSV_ChargerDonneesTLA) + (const char FARPTR pcNomRessourceLecteur, + short sNbZDataIn, + void FARPTR FARPTR pvTZDataIn, + size_t FARPTR psTTailleDataIn); + +typedef unsigned short (API_ENTRY FARPTR SSV_DechargerBeneficiaires) + (const char FARPTR NomRessourcePS, + const char FARPTR NomRessourceLecteur, + const char FARPTR CodePorteurPS, + const char FARPTR cNumFacturation, + short FARPTR sNbZDataOut, + void FARPTR FARPTR pTZDataOut, + size_t FARPTR sTTailleDataOut); + +typedef unsigned short (API_ENTRY FARPTR SSV_TraduireFSE) + (void FARPTR pZDataIn, + size_t TailleDataIn, + void FARPTR FARPTR pZDataOut, + size_t FARPTR pTailleZone); + +typedef unsigned short (API_ENTRY FARPTR SSV_SecuriserFacture) + (const char FARPTR pcNomRessourcePS, + const char FARPTR pcNomRessourceLecteur, + const char FARPTR pcCodePorteurPS, + char cNologSituation, + const char FARPTR pcNumFact, + void FARPTR pvDataIn, + size_t szTailleDataIn , + void FARPTR FARPTR pvDataOut, + size_t FARPTR pszTailleDataOut); + +typedef unsigned short (API_ENTRY FARPTR SSV_InitLIB2) (const char FARPTR pcFichierSesam); + +typedef unsigned short (API_ENTRY FARPTR SSV_TermLIB)(); + + + +/****** FONCTIONS SIMPLIFIEES *********/ + +typedef unsigned short (API_ENTRY FARPTR SIS_TraduireARL) + (unsigned short numeroSession); + +typedef unsigned short (API_ENTRY FARPTR SIS_LireCartePS) + (const char FARPTR NomRessourcePS, + const char FARPTR NomRessourceLecteur, + const char FARPTR CodePorteurPS, + unsigned short numeroSession); + +typedef unsigned short (API_ENTRY FARPTR SIS_LireConfig) + (unsigned short numeroSession); + + +typedef unsigned short (API_ENTRY FARPTR SIS_FormaterFactures) + (char cFacturesACreer, + char ModeSecur, + char cTypeFlux, + unsigned short numeroSession); + +typedef unsigned short (API_ENTRY FARPTR SIS_ChiffrerFacture) + (unsigned short numeroSession); + +typedef unsigned short (API_ENTRY FARPTR SIS_SignerFactureVitale) + (const char * pcNomRessourceVitale, + unsigned short numeroSession); + +typedef unsigned short (API_ENTRY FARPTR SIS_CalculerHashFactureAssure) + (const char * pcNumSerie, + unsigned short numeroSession); + +typedef unsigned short (API_ENTRY FARPTR SIS_AjouterSignatureAssureDansFacture) + (unsigned short numeroSession); + +typedef unsigned short (API_ENTRY FARPTR SIS_SignerFactureCPS) + (const char * pcNomRessourcePS, + const char * pcNomRessourceLecteur, + const char * pcCodePorteurPS, + char cNologSituation, + unsigned short numeroSession); + +typedef unsigned short (SIS_CalculerHashFacturePS) + (const char * pcNumSerieCPS, + unsigned short numeroSession); + +typedef unsigned short (API_ENTRY SIS_AjouterSignaturePSFacture) + (unsigned short numeroSession); + +typedef unsigned short (API_ENTRY FARPTR SIS_SignerLotCPS) + (const char * pcNomRessourcePS, + const char * pcNomRessourceLecteur, + const char * pcCodePorteurPS, + char cNologSituation, + unsigned short numeroSession); + +typedef unsigned short (API_ENTRY FARPTR SIS_FormaterLot) + (unsigned short numeroSession); + +typedef unsigned short (API_ENTRY FARPTR SIS_FormaterFichier) + (unsigned short numeroSession); + +typedef unsigned short (API_ENTRY FARPTR SIS_InitTrace) + (char FARPTR NomFichier, char FARPTR ModeOuverture, + unsigned short Module, unsigned char Niveau); + + +typedef unsigned short (API_ENTRY FARPTR SIS_MajDateLecteur) + (const char FARPTR pcNomRessourceLecteur, + const char FARPTR pcDateHeure); + +typedef unsigned short (API_ENTRY FARPTR SIS_LireDateLecteur) + (const char FARPTR pcNomRessourceLecteur, + char FARPTR pcDateHeure); + + +typedef unsigned short (API_ENTRY FARPTR SIS_LireDroitsVitale) + (const char FARPTR NomRessourcePS, + const char FARPTR NomRessourceLecteur, + const char FARPTR CodePorteurPS, + const char FARPTR DateConsultation, + unsigned short numeroSession); + +typedef unsigned short (API_ENTRY FARPTR SIS_IdentifierTLA) + (const char FARPTR pcNomRessourceLecteur, + const char FARPTR NumVersionCDC, + unsigned short numeroSession ); + +typedef unsigned short (API_ENTRY FARPTR SIS_DechargerFacturesPdT) + ( const char FARPTR NomRessourcePS, + const char FARPTR NomRessourceLecteur, + const char FARPTR CodePorteurPS, + const char FARPTR pcNumFact, + unsigned short numeroSession); + +typedef unsigned short (API_ENTRY FARPTR SIS_DechargerFSETLA) + (const char FARPTR NomRessourcePS, + const char FARPTR NomRessourceLecteur, + const char FARPTR CodePorteurPS, + const char FARPTR pcNumFact, + unsigned short numeroSession); + +typedef unsigned short (API_ENTRY FARPTR SIS_DechargerFSETLANC) + (const char FARPTR NomRessourcePS, + const char FARPTR NomRessourceLecteur, + const char FARPTR CodePorteurPS, + const char FARPTR pcNumFact, + unsigned short numeroSession); +typedef unsigned short (API_ENTRY FARPTR SIS_EffacerTLA) + (const char FARPTR NomRessourcePS, + const char FARPTR NomRessourceLecteur, + const char FARPTR CodePorteurPS, + const char FARPTR cNumFacturation, + const char FARPTR cTypeDonnee); + +typedef unsigned short (API_ENTRY FARPTR SIS_ChargerFacturesPdT) + (const char FARPTR pcNomRessourceLecteur, + const char FARPTR pcNumFacturation, + unsigned short numeroSession); + +typedef unsigned short (API_ENTRY FARPTR SIS_ChargerAppli) + (const char FARPTR pcNomRessourceLecteur, + unsigned short numeroSession); + +typedef unsigned short (API_ENTRY FARPTR SIS_ChargerDonneesTLA) + (const char FARPTR pcNomRessourceLecteur, + unsigned short numeroSession); + +typedef unsigned short (API_ENTRY FARPTR SIS_DechargerBeneficiaires) + ( const char FARPTR NomRessourcePS, + const char FARPTR NomRessourceLecteur, + const char FARPTR CodePorteurPS, + const char FARPTR cNumFacturation, + unsigned short numeroSession); + +typedef unsigned short (API_ENTRY FARPTR SIS_TraduireFSE) + (unsigned short numeroSession); + +typedef unsigned short (API_ENTRY FARPTR SIS_SecuriserFacture) + ( const char FARPTR pcNomRessourcePS, + const char FARPTR pcNomRessourceLecteur, + const char FARPTR pcCodePorteurPS, + char cNologSituation, + const char FARPTR pcNumFact, + unsigned short numeroSession); + + +/* inclusion temporaire dans ssv.h pour ne pas a avoir à relivrer Sedica (pas d'incidence sur le code) -> à inclure dans sedica.h ou commun.h*/ +/* Chaine discriminante d un nom de ressource TL PCSC */ +#define TL_PCSC " TL " + + +#ifdef __cplusplus +} +#endif + +#endif diff --git a/crates/fsv-sys/vendor/fsv/1.40.14.13/includes/STS/sts.h b/crates/fsv-sys/vendor/fsv/1.40.14.13/includes/STS/sts.h new file mode 100644 index 0000000..ca2937c --- /dev/null +++ b/crates/fsv-sys/vendor/fsv/1.40.14.13/includes/STS/sts.h @@ -0,0 +1,353 @@ +/* +%----------------------------------------------------------------------------- +% PROJET : STS INTERFACE +% +% MODULE : HEADER STS INTERFACE +% +% VERSION : cf #define ci-après +% +% FICHIER : sts.h +% +% Déclaration des prototypes des fonctions STS - INTERFACE +%----------------------------------------------------------------------------- +% +% EDS DHU - 09/04/03 - Création du .h +% +% EDS OCL - 06/06/03 - Defect 91 : Rectification du prototype de InitTrace() +% +% EDS OCL - 04/07/03 - Defect 115 : Nettoyage de stsitf.h (devenu sts.h) +% +%----------------------------------------------------------------------------- +*/ + +#ifndef __STSITF_H +#define __STSITF_H +#define __STSITF_VERSION "0103" +/* Ne pas oublier d'impacter idef.h aussi */ + +#ifdef __cplusplus +extern "C" { +#endif + +/* +% Bibliothèques ANSI ou système +%------------------------------ +*/ + + +/* +% Fichiers h inclus +%------------------ +*/ + +#include "sys_dep.h" +/* +% Macros et Constantes +%--------------------- +*/ + +/* OCL - Defect 115 : Suppression du #define G_xxx ici même */ + +/* OCL - Defect 115 : Suppression du second #ifdef _cplusplus ici même */ + + +/********************************************************************************* + ************************* Fonctions réentrantes ********************************* + *********************************************************************************/ + +/* +%----------------------------------------------------------------------------- +% STS_Tarification +% +% Rôle : Tarification de la part complémentaire des actes de la facture +% +% Paramètres d'entrée : +% MotifAppel (char) : 1er appel ('P') ou Appel sur echec de +% tarification ('E'). +% ZDonneesEntree (void*) : Zone d'échange fournie par le Progiciel +% contenant toutes les informations sur la facture +% TailleDonneesEntree (size_t) : Taille de la zone d'échange Zin +% +% Paramètres de sortie : +% ZDonneesSortie (void**) : Zone d'échange fournie par le module STS appelé +% contenant toutes les informations modifiées de la facture +% en entrée et de nouvelles informations. +% TailleDonneesSortie (size_t*) : Taille de la zone d'échange Zout +% +% Valeur retournée : +% OK si pas d'erreur +% ERR_STS_NON_INITIALISE si module STS non initialisé +% et les codes d'erreurs de la tarification du module STS appelé +% +%----------------------------------------------------------------------------- +*/ +/* OCL - Defect 115 : Remplacement PTR par FARPTR */ +typedef unsigned short (API_ENTRY FARPTR STS_Tarification)(char MotifAppel, void FARPTR ZDonneesEntree, + size_t TailleDonneesEntree, void FARPTR FARPTR ZDonneesSortie, + size_t FARPTR TailleDonneesSortie); + +/* Fonction simplifiée */ +/* OCL - Defect 115 : Remplacement STS_SIM par SGD */ +#ifdef SGD +typedef unsigned short (API_ENTRY FARPTR STS_Tarification_S)(char MotifAppel, unsigned short NumeroSession); +#endif + +/* +%----------------------------------------------------------------------------- +% STS_Assistance +% +% Rôle : Assistance à la facturation. +% +% Paramètres d'entrée : +% MotifAppel (char) : 1er appel ('P') ou Appel sur echec de +% tarification ('E'). +% PorteeAppel (ushort) : 0 pour une assistance sur toute la facture. +% 1..n pour une assistance sur un acte de rang donné /zone +% ZDonneesEntree (void*) : Zone d'échange fournie par le Progiciel +% contenant toutes les informations sur la facture +% TailleDonneesEntree (size_t) : Taille de la zone d'échange Zin +% +% Paramètres de sortie : +% ZDonneesSortie (void**) : Zone d'échange fournie par le module STS appelé +% TailleDonneesSortie (size_t*) : Taille de la zone d'échange Zout +% +% Valeur retournée : (idem Tarification) +% OK si pas d'erreur +% ERR_STS_NON_INITIALISE si module STS non initialisé +% et les codes d'erreurs de la tarification du module STS appelé +% +%----------------------------------------------------------------------------- +*/ +/* OCL - Defect 115 : Remplacement PTR par FARPTR */ +typedef unsigned short (API_ENTRY FARPTR STS_Assistance)(char MotifAppel, unsigned short PorteeAppel, + void FARPTR ZDonneesEntree, size_t TailleDonneesEntree, + void FARPTR FARPTR ZDonneesSortie, size_t FARPTR TailleDonneesSortie); + +/* Fonction simplifiée */ +#ifdef SGD +typedef unsigned short (API_ENTRY FARPTR STS_Assistance_S)(char MotifAppel, unsigned short PorteeAppel, + unsigned short NumeroSession); +#endif + +/* +%----------------------------------------------------------------------------- +% STS_LireVersion +% +% Rôle : Lecture de la version de ce module et du fichier de ces tables externes +% dans le groupe 3780. Appeller la lecture de version de chaque module STS +% puis recopier la réponse 3780 de chacun dans la zone de sortie. +% +% Paramètres d'entrée : aucun +% +% Paramètres de sortie : +% ZDonneesSortie (void**) : Zone d'échange fournie par ce module +% contenant les versions (grp 3780) demandées. +% TailleDonneesSortie (size_t*) : Taille de la zone d'échange Zout +% +% Valeur retournée : +% OK si pas d'erreur +% ERR_STS_NON_INITIALISE si module STS non initialisé +% ERR_ZOUT si ZDonneesSortie==NULL ou TailleDonneesSortie==NULL +% ERR_ZONE_ALLOC si mémoire insuffisante pour allouer la Zout +% +%----------------------------------------------------------------------------- +*/ +/* OCL - Defect 115 : Remplacement PTR par FARPTR */ +typedef unsigned short (API_ENTRY FARPTR STS_LireVersion)(void FARPTR FARPTR ZDonneesSortie, size_t FARPTR TailleDonneesSortie); + +/* Fonction simplifiée */ +#ifdef SGD +typedef unsigned short (API_ENTRY FARPTR STS_LireVersion_S)(unsigned short NumeroSession); +#endif + +/* +%----------------------------------------------------------------------------- +% STS_InitTrace +% +% Rôle : Initialisation des traces du module STS-Interface dans un fichier log. +% Cette fonction permet d'activer ou désactiver (niveau 0) les +% traces. Une activation requiert un nom de fichier et un mode +% d'ouverture. Un changement de niveau peut se faire sur le même +% fichier ou sur un différent s'il est précisé en entrée +% +% Paramètres d'entrée : +% NomFichier (char*) : Chemin et nom de fichier de trace +% ModeOuverture (char*) : Mode d'ouverture du fichier de trace +% "a", "w" (,"ab", "wb"). +% Module (ushort) : n° de module 0 à 5 (6=TOUS) +% Niveau (uchar) : Niveau de trace : 0 signifie pas de trace, 1 +% signifie traces de profondeur 8 et >=2 signifie traces sans limite +% de profondeur et activation traces module STS_SI +% +% Paramètres de sortie : aucun +% +% Valeur retournée : +% OK si pas d'erreur +% ERR_PARAM si NomFichier/ModeOuverture incorrect quand Niveau > 0 +% ERR_TRACE_FILE si erreur d'ouverture du fichier de trace +% +%----------------------------------------------------------------------------- +*/ +/* OCL - Defect 91 : Rectification du prototype de InitTrace() */ +/* OCL - Defect 115 : Remplacement PTR par FARPTR */ +typedef unsigned short (API_ENTRY FARPTR STS_InitTrace)(const char FARPTR pathConf, const char FARPTR ModeOuverture, + unsigned short Module, unsigned char Niveau); + +/********************************************************************************* + ************************* Fonctions d'initialisation et de terminaison ********* + *********************************************************************************/ + +/* +%----------------------------------------------------------------------------- +% STS_InitLIB +% +% Rôle : Initialisation du module STS-Interface : Chargement des tables externes +% et suivi de parc. Appel de l'nitialisation de chaque module STS +% +% Paramètres d'entrée : aucun +% +% Paramètres de sortie : aucun +% +% Valeur retournée : +% OK si pas d'erreur +% ERR_INTERNE_ITF si erreur interne du module STS-Interface (ou STS SI) +% ERR_MEM_DISPO si plus de mémoire disponible +% ERR_PKG_PATH_INI si le chemin d'accès au fichier binaire est +% inconnu (fichier de configuration inaccessible ou information +% manquante) +% ERR_ITF_PKG_ACCES si fichier binaire de table inaccessible +% ERR_ITF_PKG_VER si version du fichier incohérent avec version du +% module STS-Interface (dans les deux sens) +% ERR_ITF_PKG_CRC si CRC du fichier binaire est incorrect +% ERR_ITF_PKG_FORME si format du fichier incorrect +% ERR_ITF_PKG_INCPT s'il manque une table dans le fichier binaire +% ERR_ITF_PKG_NOM si le nom du fichier est différent du nom dans +% l'en-tête du fichier. +% les codes suivants ne sont pas des erreurs fatales (non bloquant) +% mais juste des avertissements +% WAR_STS_DEJA_INITIALISE si module déjà initialisé +% WAR_ADM_PATH si chemin au suivi de parc non trouvé dans fichier +% de configuration des produits SV +% WAR_ADM_FILE si impossible de créer les fichiers de suivi de +% parc +% ET les codes de retour de chaque module STS appelé +% +%----------------------------------------------------------------------------- +*/ +/* extern unsigned short API_ENTRY STS_InitLIB(); */ +/* +%----------------------------------------------------------------------------- +% STS_InitLIB2 +% +% Rôle : Initialisation du module STS-Interface : Chargement des tables externes +% et suivi de parc. Appel de l'nitialisation de chaque module STS +% +% Paramètres d'entrée : +% NomFichierIni (char*) : Chemin et nom du fichier de configuration des +% produits SESAM Vitale du poste de travail (sesam.ini) +% +% Paramètres de sortie : aucun +% +% Valeur retournée : +% OK si pas d'erreur +% ERR_INTERNE_ITF si erreur interne du module STS-Interface (ou STS SI) +% ERR_MEM_DISPO si plus de mémoire disponible +% ERR_PKG_PATH_INI si le chemin d'accès au fichier binaire est +% inconnu (fichier de configuration inaccessible ou information +% manquante) +% ERR_ITF_PKG_ACCES si fichier binaire de table inaccessible +% ERR_ITF_PKG_VER si version du fichier incohérent avec version du +% module STS-Interface (dans les deux sens) +% ERR_ITF_PKG_CRC si CRC du fichier binaire est incorrect +% ERR_ITF_PKG_FORME si format du fichier incorrect +% ERR_ITF_PKG_INCPT s'il manque une table dans le fichier binaire +% ERR_ITF_PKG_NOM si le nom du fichier est différent du nom dans +% l'en-tête du fichier. +% les codes suivants ne sont pas des erreurs fatales (non bloquant) +% mais juste des avertissements +% WAR_STS_DEJA_INITIALISE si module déjà initialisé +% WAR_ADM_PATH si chemin au suivi de parc non trouvé dans fichier +% de configuration des produits SV +% WAR_ADM_FILE si impossible de créer les fichiers de suivi de +% parc +% ET les codes de retour de chaque module STS appelé +% +%----------------------------------------------------------------------------- +*/ +typedef unsigned short (API_ENTRY FARPTR STS_InitLIB2)(const char FARPTR nomFichierIni); + +/* +%----------------------------------------------------------------------------- +% STS_TermLIB +% +% Rôle : Terminaison du module STS-Interface : Déchargement des tables externes. +% +% Paramètres d'entrée : aucun +% +% Paramètres de sortie : aucun +% +% Valeur retournée : +% OK si pas d'erreur +% ERR_INTERNE_ITF si erreur interne du module STS-Interface (ou STS SI) +% +%----------------------------------------------------------------------------- +*/ +typedef unsigned short (API_ENTRY FARPTR STS_TermLIB)(void); + +/********************************************************************************* + ************************* Fonctions de gestion de la mémoire ******************* + *********************************************************************************/ + +/* +%----------------------------------------------------------------------------- +% STS_AllouerZoneMem +% +% Rôle : Allocation d'une zone d'échange de sortie par STS Interface. +% Cette fonction permet la réallocation d'une zone d'échange. +% L'allocation d'une nouvelle zone d'échange nécessite un pointeur +% NULL en entrée ! +% Cette fonctio est à utiliser conjointement avec STS_LibererZoneMem +% pour faciliter le Debugage (zone allouée par l'écrivain) +% +% Paramètres d'entrée : +% Taille (size_t) : Taille de la zone d'échange à allouer. +% +% Paramètres d'entrée et de sortie : +% Zone (void**) : Zone d'échange préallouée en entrée (ou NULL). +% Zone allouée (réallouée) par le module STS-Interface. +% +% Valeur retournée : +% OK si pas d'erreur +% ERR_ZOUT si Zone==NULL ou Taille==0 +% ERR_ZONE_ALLOC si plus de mémoire disponible +% +%----------------------------------------------------------------------------- +*/ +/* OCL - Defect 115 : Remplacement PTR par FARPTR */ +typedef unsigned short (API_ENTRY FARPTR STS_AllouerZoneMem)(void FARPTR FARPTR Zone, size_t Taille); + + +/* +%----------------------------------------------------------------------------- +% STS_LibererZoneMem +% +% Rôle : Libération de la zone d'échange de sortie par STS Interface. +% +% Paramètres d'entrée : +% Zone (void*) : Zone d'échange à libérer (allouée précédemment par +% le module STS-Interce par STS_AllouerZoneMem). +% +% Paramètres de sortie : aucun +% +% Valeur retournée : aucune +% +%----------------------------------------------------------------------------- +*/ +/* OCL - Defect 115 : Remplacement PTR par FARPTR */ +typedef void (API_ENTRY FARPTR STS_LibererZoneMem)(void FARPTR Zone); + +#ifdef __cplusplus +} +#endif + +#endif /* __STSITF_H */ diff --git a/crates/fsv-sys/vendor/fsv/1.40.14.13/includes/SYS_DEF/linux/linuxdef.h b/crates/fsv-sys/vendor/fsv/1.40.14.13/includes/SYS_DEF/linux/linuxdef.h new file mode 100644 index 0000000..0ef175e --- /dev/null +++ b/crates/fsv-sys/vendor/fsv/1.40.14.13/includes/SYS_DEF/linux/linuxdef.h @@ -0,0 +1,189 @@ +/*--------------------------------------------------------------------------- + PROJET : Couche de portabilite multi-systeme + + PLATE-FORME: LINUX + + MODULE : Definition des macros et des types utilises par la couche + d'abstraction systeme pour la plate-forme LINUX. + + Le fichier de definition des types portable (ce fichier) doit + etre inclus avant tout autre .h de definitions d'APIS gip-cps. + Ce fichier definit tous les types et macros dependants du + systeme. + + FICHIER : common\linux\src\linuxdef.h + + VERSION : 1.00 + + DATE : 10/01/2001 + + AUTEUR : ALVARO ROCHA + +----------------------------------------------------------------------------- +----------------------------------------------------------------------------- + Modifications: (nouvelle version, date, auteur, explication) + ... + + - V4.31 - AROC le 12/02/2001 : + Ajout des #define TRUE et FALSE ainsi que le typedef int BOOLEEN +----------------------------------------------------------------------------- +---------------------------------------------------------------------------*/ + + +#ifndef __CPSCASDF_H +#define __CPSCASDF_H + +/*----------------- definition des macros portables ------------------------*/ +#ifndef far +#define far +#endif + +#ifndef FAR +#define FAR +#endif + +#ifndef PTR +#define PTR * +#endif + +#ifndef PVOID +#define PVOID void PTR +#endif + +#ifndef FARPTR +#define FARPTR PTR +#endif + +#ifndef FPVOID +#define FPVOID void FARPTR +#endif + +/* AROC 12/02/2001 debut : */ +#ifndef FALSE +#define FALSE 0 +#endif + +#ifndef TRUE +#define TRUE 1 +#endif +/* AROC 12/02/2001 fin */ + +/*----------------- definition des types portables ------------------------*/ +#ifndef CHAR +#define CHAR char +#endif + +#ifndef PCHAR +#define PCHAR CHAR PTR +#endif + +#ifndef PSTRG +#define PSTRG CHAR PTR +#endif + +#ifndef UCHAR +#define UCHAR unsigned char +#endif + +#ifndef PUCHAR +#define PUCHAR UCHAR PTR +#endif + + +#ifndef INT8 +#define INT8 char +#endif + +#ifndef INT16 +#define INT16 short +#endif + +#ifndef INT32 +#define INT32 long +#endif + +#ifndef PINT8 +#define PINT8 INT8 PTR +#endif + +#ifndef PINT16 +#define PINT16 INT16 PTR +#endif + +#ifndef PINT32 +#define PINT32 INT32 PTR +#endif + + +#ifndef UINT8 +#define UINT8 unsigned char +#endif + +#ifndef UINT16 +#define UINT16 unsigned short +#endif + +#ifndef UINT32 +#define UINT32 unsigned long +#endif + +#ifndef PUINT8 +#define PUINT8 UINT8 PTR +#endif + +#ifndef PUINT16 +#define PUINT16 UINT16 PTR +#endif + +#ifndef PUINT32 +#define PUINT32 UINT32 PTR +#endif + + +/* 11/02/1997 : Ajout DRE pour CPSCAS */ +#ifndef VOID +#define VOID void +#endif +#ifndef PSTR +#define PSTR char PTR +#endif +/* 11/02/1997 : Fin */ + +#ifndef WORD +#define WORD unsigned short +#endif + +#ifndef DWORD +#define DWORD unsigned long +#endif +//typedef unsigned char BYTE; +#ifndef BYTE +#define BYTE unsigned char +#endif +//typedef BYTE far * LPBYTE; +#ifndef LPBYTE +#define LPBYTE BYTE far * +#endif +//typedef int BOOL; +#ifndef BOOL +#define BOOL int +#endif + +#ifndef Unref +#define Unref( a) a=a +#endif + +#ifndef min +#define min(a,b) ((a)>(b)?(b):(a)) +#endif + +#ifndef max +#define max(a,b) ((a)<(b)?(b):(a)) +#endif + +/* Taille maximale allouée par la fonction "malloc" */ +#ifndef MAXBLOC +#define MAXBLOC 4294967295 +#endif + +#endif diff --git a/crates/fsv-sys/vendor/fsv/1.40.14.13/includes/SYS_DEF/linux/mc_sys_def.h b/crates/fsv-sys/vendor/fsv/1.40.14.13/includes/SYS_DEF/linux/mc_sys_def.h new file mode 100644 index 0000000..2b96f59 --- /dev/null +++ b/crates/fsv-sys/vendor/fsv/1.40.14.13/includes/SYS_DEF/linux/mc_sys_def.h @@ -0,0 +1,85 @@ +/* + * ------------------------------------------------------------------- + * (c) 2002 GIE SESAM-VITALE + * + * FICHIER : sys_def.h (v2) + * + * PLATE-FORME : Windows 32 bits + * + * Définitions dépendantes du système. + * ------------------------------------------------------------------- + */ + +#include "linuxdef.h" +#include "stdlib.h" + +#ifndef __SYS_DEF_H__ +#define __SYS_DEF_H__ + +#ifdef __cplusplus +extern "C" { +#endif + + +#ifndef API_ENTRY +#define API_ENTRY +#endif + +#ifndef _MAX_PATH +#define _MAX_PATH 256 +#endif + +#ifndef _MAX_FNAME +#define _MAX_FNAME 160 +#endif + +#ifndef _MAX_DIR +#define _MAX_DIR 800 +#endif + +#ifndef FARPTR +#define FARPTR * +#endif + +#ifndef SYS_MAX_PATH +#define SYS_MAX_PATH _MAX_PATH +#endif + +#ifndef SYS_MAX_FNAME +#define SYS_MAX_FNAME _MAX_FNAME +#endif + +#ifndef SYS_MAX_DIR +#define SYS_MAX_DIR _MAX_DIR +#endif + +#ifndef SYS_HANDLE +#define SYS_HANDLE void * +#endif + +#ifndef PTR +#define PTR * +#endif + +#ifndef SYSFARPROC_ +#define SYSFARPROC_ +typedef unsigned short (API_ENTRY FARPTR SYSFARPROC)(); +#endif + + +/* Séparateur utilisé dans le nommage des arborescences de fichiers */ +#ifndef SEPARATEUR_REPERTOIRE +#define SEPARATEUR_REPERTOIRE '/' +#endif + + +/* Activation des fonctions simplifiées. */ +#ifndef SGD +#define SGD +#endif + +#ifdef __cplusplus +} +#endif + +#endif diff --git a/crates/fsv-sys/vendor/fsv/1.40.14.13/includes/SYS_DEF/macosx/mc_sys_def.h b/crates/fsv-sys/vendor/fsv/1.40.14.13/includes/SYS_DEF/macosx/mc_sys_def.h new file mode 100644 index 0000000..ca0c3ad --- /dev/null +++ b/crates/fsv-sys/vendor/fsv/1.40.14.13/includes/SYS_DEF/macosx/mc_sys_def.h @@ -0,0 +1,92 @@ +/* + * ------------------------------------------------------------------- + * (c) 2002 GIE SESAM-VITALE + * + * FICHIER : sys_def.h (v2) + * + * PLATE-FORME : MAC OSX + * + * Définitions dépendantes du système. + * ------------------------------------------------------------------- + */ + +//3/11/2004 Modification pour compilation MAC OS X +#include "osxdef.h" + +#include +#include +#include "stdlib.h" + +#ifndef __SYS_DEF_H__ +#define __SYS_DEF_H__ + + + +#ifdef __cplusplus +extern "C" { +#endif + +//3-11-2004 Ajout pour MAc OS X +#define FALSE 0 +#define TRUE 1 + +//3/11/2004 Modification pour compilation MAC OS X +#ifndef API_ENTRY +#define API_ENTRY +#endif + +#ifndef FARPTR +#define FARPTR * +#endif + +#ifndef SYS_MAX_PATH +#define SYS_MAX_PATH _MAX_PATH +#endif + +#ifndef SYS_MAX_FNAME +#define SYS_MAX_FNAME _MAX_FNAME +#endif + +#ifndef SYS_MAX_DIR +#define SYS_MAX_DIR _MAX_DIR +#endif + + + +#ifndef PTR +#define PTR * +#endif + + +#ifndef SYS_HANDLE +//typedef void * SYS_HANDLE; +#define SYS_HANDLE void * +#endif + +#ifndef SYSFARPROC_ +#define SYSFARPROC_ +typedef unsigned short (API_ENTRY FARPTR SYSFARPROC)(); +#endif + + + +/* Séparateur utilisé dans le nommage des arborescences de fichiers */ +#ifndef SEPARATEUR_REPERTOIRE + #ifdef WIN32 + #define SEPARATEUR_REPERTOIRE '\\' + #else + #define SEPARATEUR_REPERTOIRE '/' + #endif +#endif + + +/* Activation des fonctions simplifiées. */ +#ifndef SGD +#define SGD +#endif + +#ifdef __cplusplus +} +#endif + +#endif diff --git a/crates/fsv-sys/vendor/fsv/1.40.14.13/includes/SYS_DEF/macosx/osxdef.h b/crates/fsv-sys/vendor/fsv/1.40.14.13/includes/SYS_DEF/macosx/osxdef.h new file mode 100644 index 0000000..9e14e90 --- /dev/null +++ b/crates/fsv-sys/vendor/fsv/1.40.14.13/includes/SYS_DEF/macosx/osxdef.h @@ -0,0 +1,150 @@ +/*--------------------------------------------------------------------------- + PROJET : Couche de portabilite multi-systeme + + PLATE-FORME: MAC OS X + + MODULE : Definition des macros et des types utilises par la couche + d'abstraction systeme pour la plate-forme LINUX. + + Le fichier de definition des types portable (ce fichier) doit + etre inclus avant tout autre .h de definitions d'APIS gip-cps. + Ce fichier definit tous les types et macros dependants du + systeme. + + FICHIER : common\linux\src\linuxdef.h + + VERSION : 1.00 + + DATE : 10/01/2001 + + AUTEUR : ALVARO ROCHA + +----------------------------------------------------------------------------- +----------------------------------------------------------------------------- + Modifications: (nouvelle version, date, auteur, explication) + ... + + - V4.31 - AROC le 12/02/2001 : + Ajout des #define TRUE et FALSE ainsi que le typedef int BOOLEEN +----------------------------------------------------------------------------- +---------------------------------------------------------------------------*/ + + +#ifndef __CPSCASDF_H +#define __CPSCASDF_H + +//#ifndef __MACTYPES__ +/*#include */ +//#include"/System/Library/Frameworks/CoreServices.framework/Versions/A/Frameworks/CarbonCore.framework/Versions/A/Headers/MacTypes.h"*/ +//#endif + + + +/*----------------- definition des macros portables ------------------------*/ + + +/* point d'entree exporte en DLL ????????????????????????????????????????? */ +#define API_ENTRY /* pour l'instant */ + +#define far +#define FAR + +#define PTR * + +#define PVOID void PTR + +#ifndef FARPTR +#define FARPTR PTR +#endif +#define FPVOID void FARPTR + +/* AROC 18/O4/2001 ajout pour io_comm*/ +#define HCOMM unsigned int +#define PHCOMM HCOMM FARPTR + +/* AROC 12/02/2001 debut : */ +#ifndef FALSE +#define FALSE 0 +#endif + +#ifndef TRUE +#define TRUE 1 +#endif +/* AROC 12/02/2001 fin */ + +/*----------------- definition des types portables ------------------------*/ + +/* AROC 12/02/2001 debut : */ +/* mise en commentaire de ce define car pb avec module sts où BOOLEEN est defini en char*/ +//#ifndef BOOLEEN +//typedef int BOOLEEN; +//#define BOOLEEN int +//#endif +/* AROC 12/02/2001 fin */ +/* Boolean */ +#define BOOL Boolean + +//#define _MAX_PATH 1024 +typedef char CHAR; +typedef CHAR PTR PCHAR; + +typedef CHAR PTR PSTRG; + +typedef unsigned char UCHAR; +typedef UCHAR PTR PUCHAR; + +typedef char INT8; +typedef short INT16; +typedef long INT32; + +typedef INT8 PTR PINT8; +typedef INT16 PTR PINT16; +typedef INT32 PTR PINT32; + +typedef unsigned char UINT8; +typedef unsigned short UINT16; +typedef unsigned long UINT32; + +typedef UINT8 PTR PUINT8; +typedef UINT16 PTR PUINT16; +typedef UINT32 PTR PUINT32; + +/* 11/02/1997 : Ajout DRE pour CPSCAS */ +typedef void VOID; +typedef char PTR PSTR; +/* 11/02/1997 : Fin */ + +typedef unsigned short WORD; +typedef unsigned long DWORD; +typedef unsigned char BYTE; +typedef BYTE far * LPBYTE; + +#define Unref( a) a=a + +#ifndef min +#define min(a,b) ((a)>(b)?(b):(a)) +#endif + +#ifndef max +#define max(a,b) ((a)<(b)?(b):(a)) +#endif + +#ifdef LITTLE_ENDIAN +#undef LITTLE_ENDIAN +#endif + +#ifndef PATH_MAX +#define PATH_MAX 1024 +#endif +#ifndef _MAX_PATH +#define _MAX_PATH PATH_MAX /* PATH_MAX defini dans */ +#endif + + + +/* Taille maximale allouÈe par la fonction "malloc" */ +#ifndef MAXBLOC +#define MAXBLOC 0x7FFFFFFF +#endif + +#endif diff --git a/crates/fsv-sys/vendor/fsv/1.40.14.13/includes/SYS_DEF/win/mc_sys_def.h b/crates/fsv-sys/vendor/fsv/1.40.14.13/includes/SYS_DEF/win/mc_sys_def.h new file mode 100644 index 0000000..ec3f061 --- /dev/null +++ b/crates/fsv-sys/vendor/fsv/1.40.14.13/includes/SYS_DEF/win/mc_sys_def.h @@ -0,0 +1,69 @@ +/* + * ------------------------------------------------------------------- + * (c) 2002 GIE SESAM-VITALE + * + * FICHIER : sys_def.h (v2) + * + * PLATE-FORME : Windows 32 bits + * + * Définitions dépendantes du système. + * ------------------------------------------------------------------- + */ + +#include + +#ifndef __SYS_DEF_H__ +#define __SYS_DEF_H__ + +#ifdef __cplusplus +extern "C" { +#endif + + +#ifndef API_ENTRY +#define API_ENTRY __stdcall +#endif + +#ifndef FARPTR +#define FARPTR * +#endif + +#ifndef SYS_MAX_PATH +#define SYS_MAX_PATH _MAX_PATH +#endif + +#ifndef SYS_MAX_FNAME +#define SYS_MAX_FNAME _MAX_FNAME +#endif + +#ifndef SYS_MAX_DIR +#define SYS_MAX_DIR _MAX_DIR +#endif + +typedef void * SYS_HANDLE; + +#ifndef PTR +#define PTR * +#endif + + +typedef unsigned short (API_ENTRY FARPTR SYSFARPROC)(); + + + +/* Séparateur utilisé dans le nommage des arborescences de fichiers */ +#ifndef SEPARATEUR_REPERTOIRE +#define SEPARATEUR_REPERTOIRE '\\' +#endif + + +/* Activation des fonctions simplifiées. */ +#ifndef SGD +#define SGD +#endif + +#ifdef __cplusplus +} +#endif + +#endif diff --git a/crates/fsv-sys/vendor/fsv/1.40.14.13/includes/wrapper.linux.h b/crates/fsv-sys/vendor/fsv/1.40.14.13/includes/wrapper.linux.h new file mode 100644 index 0000000..50bdd53 --- /dev/null +++ b/crates/fsv-sys/vendor/fsv/1.40.14.13/includes/wrapper.linux.h @@ -0,0 +1,7 @@ +#ifndef WRAPPER_LINUX_H +#define WRAPPER_LINUX_H + +#include "SYS_DEF/linux/mc_sys_def.h" +#include "SSV/pourFSV1.40.14/ssv.h" + +#endif // WRAPPER_LINUX_H \ No newline at end of file diff --git a/crates/fsv-sys/vendor/fsv/1.40.14.13/includes/wrapper.macosx.h b/crates/fsv-sys/vendor/fsv/1.40.14.13/includes/wrapper.macosx.h new file mode 100644 index 0000000..d981100 --- /dev/null +++ b/crates/fsv-sys/vendor/fsv/1.40.14.13/includes/wrapper.macosx.h @@ -0,0 +1,7 @@ +#ifndef WRAPPER_MACOSX_H +#define WRAPPER_MACOSX_H + +#include "SYS_DEF/macosx/mc_sys_def.h" +#include "SSV/pourFSV1.40.14/ssv.h" + +#endif // WRAPPER_MACOSX_H \ No newline at end of file diff --git a/crates/fsv-sys/vendor/fsv/1.40.14.13/includes/wrapper.win.h b/crates/fsv-sys/vendor/fsv/1.40.14.13/includes/wrapper.win.h new file mode 100644 index 0000000..23aebe0 --- /dev/null +++ b/crates/fsv-sys/vendor/fsv/1.40.14.13/includes/wrapper.win.h @@ -0,0 +1,7 @@ +#ifndef WRAPPER_WIN_H +#define WRAPPER_WIN_H + +#include "SYS_DEF/win/mc_sys_def.h" +#include "SSV/pourFSV1.40.14/ssv.h" + +#endif // WRAPPER_WIN_H \ No newline at end of file