kontocheck 0.0.6 → 0.0.7
Sign up to get free protection for your applications and to get access to all the features.
- data/VERSION.yml +1 -1
- data/ext/konto_check_raw/konto_check.c +1713 -379
- data/ext/konto_check_raw/konto_check.h +52 -14
- data/kontocheck.gemspec +54 -0
- metadata +8 -8
@@ -45,11 +45,27 @@
|
|
45
45
|
|
46
46
|
/*
|
47
47
|
* ##########################################################################
|
48
|
-
* # Die Berechnungsmethoden
|
49
|
-
* #
|
48
|
+
* # Die Berechnungsmethoden B6 und D1 werden zum 5.9.11 geändert; mit dem #
|
49
|
+
* # folgenden Makro werden die neuen Berechnungsmethoden aktiviert. #
|
50
50
|
* ##########################################################################
|
51
51
|
*/
|
52
|
-
#define
|
52
|
+
#define METHODE_NEU_2011_09_05 1
|
53
|
+
|
54
|
+
/* Das Makro DEFAULT_ENCODING legt die Ausgabe-Kodierung für die Funktion
|
55
|
+
* kto_check_retval2txt() und die Blocks Name, Kurzname und Ort aus der
|
56
|
+
* LUT-Datei fest. Die folgenden Werte sind möglich:
|
57
|
+
*
|
58
|
+
* 1: ISO-8859-1
|
59
|
+
* 2: UTF-8
|
60
|
+
* 3: HTML Entities
|
61
|
+
* 4: DOS CP-850
|
62
|
+
*
|
63
|
+
* Werte außerhalb dieses Bereichs dürften schnell zum Absturz führen, da
|
64
|
+
* einige Arrays damit initialisiert werden.
|
65
|
+
*/
|
66
|
+
|
67
|
+
#define DEFAULT_ENCODING 1
|
68
|
+
#define KEEP_RAW_DATA 1
|
53
69
|
|
54
70
|
/*
|
55
71
|
* ##########################################################################
|
@@ -223,6 +239,13 @@
|
|
223
239
|
#define LUT2_NACHFOLGE_BLZ 13
|
224
240
|
#define LUT2_NAME_NAME_KURZ 14
|
225
241
|
#define LUT2_INFO 15
|
242
|
+
#define LUT2_BIC_SORT 16
|
243
|
+
#define LUT2_NAME_SORT 17
|
244
|
+
#define LUT2_NAME_KURZ_SORT 18
|
245
|
+
#define LUT2_ORT_SORT 19
|
246
|
+
#define LUT2_PLZ_SORT 20
|
247
|
+
#define LUT2_PZ_SORT 21
|
248
|
+
#define LUT2_OWN_IBAN 22
|
226
249
|
|
227
250
|
#define LUT2_2_BLZ 101
|
228
251
|
#define LUT2_2_FILIALEN 102
|
@@ -239,6 +262,13 @@
|
|
239
262
|
#define LUT2_2_NACHFOLGE_BLZ 113
|
240
263
|
#define LUT2_2_NAME_NAME_KURZ 114
|
241
264
|
#define LUT2_2_INFO 115
|
265
|
+
#define LUT2_2_BIC_SORT 116
|
266
|
+
#define LUT2_2_NAME_SORT 117
|
267
|
+
#define LUT2_2_NAME_KURZ_SORT 118
|
268
|
+
#define LUT2_2_ORT_SORT 119
|
269
|
+
#define LUT2_2_PLZ_SORT 120
|
270
|
+
#define LUT2_2_PZ_SORT 121
|
271
|
+
#define LUT2_2_OWN_IBAN 122
|
242
272
|
|
243
273
|
#define LUT2_DEFAULT 501
|
244
274
|
|
@@ -255,6 +285,7 @@ extern const char *lut2_feld_namen[256];
|
|
255
285
|
*/
|
256
286
|
|
257
287
|
#undef FALSE
|
288
|
+
#define NO_OWN_IBAN_CALCULATION -113
|
258
289
|
#define KTO_CHECK_UNSUPPORTED_COMPRESSION -112
|
259
290
|
#define KTO_CHECK_INVALID_COMPRESSION_LIB -111
|
260
291
|
#define OK_UNTERKONTO_ATTACHED -110
|
@@ -456,8 +487,8 @@ typedef struct{
|
|
456
487
|
* # Dieser Parameter gibt an, wieviele Slots das Inhaltsverzeichnis einer #
|
457
488
|
* # LUT-Datei mindestens haben soll. Für jeden Block in der LUT-Datei wird #
|
458
489
|
* # ein Slot im Inhaltsverzeichnis benötigt; bei einer LUT-Datei mit allen #
|
459
|
-
* # Einträgen (Level 9) sind das
|
460
|
-
* # Datei gehalten werden sollen,
|
490
|
+
* # Einträgen (Level 9) sind das 19 Slots, falls zwei Datensätze in der #
|
491
|
+
* # Datei gehalten werden sollen, 38 (inklusive Indexblocks). #
|
461
492
|
* # #
|
462
493
|
* # Das Slotverzeichnis ist eine relativ einfache Datenstruktur; es #
|
463
494
|
* # enthält für jeden Slot nur drei 4 Byte-Integers (Typ, Offset und #
|
@@ -472,7 +503,7 @@ typedef struct{
|
|
472
503
|
* # #
|
473
504
|
* ##########################################################################
|
474
505
|
*/
|
475
|
-
#define SLOT_CNT_MIN
|
506
|
+
#define SLOT_CNT_MIN 40
|
476
507
|
|
477
508
|
/*
|
478
509
|
* ##########################################################################
|
@@ -714,6 +745,7 @@ DLL_EXPORT int kto_check_init2(char *lut_name);
|
|
714
745
|
DLL_EXPORT int *lut2_status(void);
|
715
746
|
DLL_EXPORT int kto_check_init_p(char *lut_name,int required,int set,int incremental);
|
716
747
|
DLL_EXPORT int lut_info(char *lut_name,char **info1,char **info2,int *valid1,int *valid2);
|
748
|
+
DLL_EXPORT const char *current_lutfile_name(int *set,int *level,int *retval);
|
717
749
|
DLL_EXPORT int lut_valid(void);
|
718
750
|
DLL_EXPORT int get_lut_info2(char *lut_name,int *version_p,char **prolog_p,char **info_p,char **user_info_p);
|
719
751
|
DLL_EXPORT int get_lut_info_b(char **info,char *lutname);
|
@@ -758,15 +790,17 @@ DLL_EXPORT int lut_loeschung(char *b,int zweigstelle,int *retval);
|
|
758
790
|
DLL_EXPORT int lut_loeschung_i(int b,int zweigstelle,int *retval);
|
759
791
|
DLL_EXPORT int lut_nachfolge_blz(char *b,int zweigstelle,int *retval);
|
760
792
|
DLL_EXPORT int lut_nachfolge_blz_i(int b,int zweigstelle,int *retval);
|
793
|
+
DLL_EXPORT int lut_keine_iban_berechnung(char *iban_blacklist,char *lutfile,int set);
|
761
794
|
|
762
795
|
/* Suche von BLZs */
|
763
|
-
DLL_EXPORT int lut_suche_bic(char *such_name,int *anzahl,int **start_idx,int **
|
764
|
-
DLL_EXPORT int lut_suche_namen(char *such_name,int *anzahl,int **start_idx,int **
|
765
|
-
DLL_EXPORT int lut_suche_namen_kurz(char *such_name,int *anzahl,int **start_idx,int **
|
766
|
-
DLL_EXPORT int lut_suche_ort(char *such_name,int *anzahl,int **start_idx,int **
|
767
|
-
DLL_EXPORT int lut_suche_blz(int such1,int such2,int *anzahl,int **start_idx,int **
|
768
|
-
DLL_EXPORT int lut_suche_pz(int such1,int such2,int *anzahl,int **start_idx,int **
|
769
|
-
DLL_EXPORT int lut_suche_plz(int such1,int such2,int *anzahl,int **start_idx,int **
|
796
|
+
DLL_EXPORT int lut_suche_bic(char *such_name,int *anzahl,int **start_idx,int **zweigstelle_base,char ***base_name,int **blz_base);
|
797
|
+
DLL_EXPORT int lut_suche_namen(char *such_name,int *anzahl,int **start_idx,int **zweigstelle_base,char ***base_name,int **blz_base);
|
798
|
+
DLL_EXPORT int lut_suche_namen_kurz(char *such_name,int *anzahl,int **start_idx,int **zweigstelle_base,char ***base_name,int **blz_base);
|
799
|
+
DLL_EXPORT int lut_suche_ort(char *such_name,int *anzahl,int **start_idx,int **zweigstelle_base,char ***base_name,int **blz_base);
|
800
|
+
DLL_EXPORT int lut_suche_blz(int such1,int such2,int *anzahl,int **start_idx,int **zweigstelle_base,int **base_name,int **blz_base);
|
801
|
+
DLL_EXPORT int lut_suche_pz(int such1,int such2,int *anzahl,int **start_idx,int **zweigstelle_base,int **base_name,int **blz_base);
|
802
|
+
DLL_EXPORT int lut_suche_plz(int such1,int such2,int *anzahl,int **start_idx,int **zweigstelle_base,int **base_name,int **blz_base);
|
803
|
+
DLL_EXPORT int konto_check_idx2blz(int idx,int *zweigstelle,int *retval);
|
770
804
|
|
771
805
|
/* (Benutzerdefinierte) Default-Werte in der LUT-Datei lesen und schreiben */
|
772
806
|
#define DEFAULT_CNT 50 /* Anzahl Einträge (fest) */
|
@@ -789,14 +823,18 @@ DLL_EXPORT int ipi_gen(char *zweck,char *dst,char *papier);
|
|
789
823
|
DLL_EXPORT int ipi_check(char *zweck);
|
790
824
|
|
791
825
|
/* Rückgabewerte in Klartext umwandeln */
|
826
|
+
DLL_EXPORT int kto_check_encoding(int mode);
|
827
|
+
DLL_EXPORT int keep_raw_data(int mode);
|
828
|
+
DLL_EXPORT const char *kto_check_encoding_str(int mode);
|
792
829
|
DLL_EXPORT const char *kto_check_retval2txt(int retval);
|
830
|
+
DLL_EXPORT const char *kto_check_retval2iso(int retval);
|
793
831
|
DLL_EXPORT const char *kto_check_retval2txt_short(int retval);
|
794
832
|
DLL_EXPORT const char *kto_check_retval2html(int retval);
|
795
833
|
DLL_EXPORT const char *kto_check_retval2utf8(int retval);
|
796
834
|
DLL_EXPORT const char *kto_check_retval2dos(int retval);
|
797
835
|
|
798
836
|
/* Prüfziffer (numerisch) in String umwandeln */
|
799
|
-
DLL_EXPORT
|
837
|
+
const DLL_EXPORT char *pz2str(int pz,int *ret);
|
800
838
|
|
801
839
|
/*
|
802
840
|
* ######################################################################
|
data/kontocheck.gemspec
ADDED
@@ -0,0 +1,54 @@
|
|
1
|
+
# Generated by jeweler
|
2
|
+
# DO NOT EDIT THIS FILE DIRECTLY
|
3
|
+
# Instead, edit Jeweler::Tasks in Rakefile, and run 'rake gemspec'
|
4
|
+
# -*- encoding: utf-8 -*-
|
5
|
+
|
6
|
+
Gem::Specification.new do |s|
|
7
|
+
s.name = "kontocheck"
|
8
|
+
s.version = "0.0.7"
|
9
|
+
|
10
|
+
s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
|
11
|
+
s.authors = ["Provideal Systems GmbH", "Michael Plugge", "Jan Schwenzien"]
|
12
|
+
s.date = "2012-03-31"
|
13
|
+
s.description = "Check whether a certain bic/account-no-combination can possibly be valid. It uses the C library konto_check (see http://sourceforge.net/projects/kontocheck/) by Michael Plugge."
|
14
|
+
s.email = "jan@general-scripting.com"
|
15
|
+
s.extensions = ["ext/konto_check_raw/extconf.rb"]
|
16
|
+
s.extra_rdoc_files = [
|
17
|
+
"LICENSE",
|
18
|
+
"README.textile"
|
19
|
+
]
|
20
|
+
s.files = [
|
21
|
+
".document",
|
22
|
+
"CHANGES",
|
23
|
+
"LICENSE",
|
24
|
+
"README.textile",
|
25
|
+
"Rakefile",
|
26
|
+
"VERSION.yml",
|
27
|
+
"ext/konto_check_raw/extconf.rb",
|
28
|
+
"ext/konto_check_raw/konto_check.c",
|
29
|
+
"ext/konto_check_raw/konto_check.h",
|
30
|
+
"ext/konto_check_raw/konto_check_raw_ruby.c",
|
31
|
+
"init.rb",
|
32
|
+
"kontocheck.gemspec",
|
33
|
+
"lib/konto_check.rb",
|
34
|
+
"test/helper.rb",
|
35
|
+
"test/test_konto_check.rb"
|
36
|
+
]
|
37
|
+
s.homepage = "http://github.com/jeanmartin/konto_check"
|
38
|
+
s.require_paths = ["lib"]
|
39
|
+
s.rubygems_version = "1.8.15"
|
40
|
+
s.summary = "Checking german BICs/Bank account numbers"
|
41
|
+
|
42
|
+
if s.respond_to? :specification_version then
|
43
|
+
s.specification_version = 3
|
44
|
+
|
45
|
+
if Gem::Version.new(Gem::VERSION) >= Gem::Version.new('1.2.0') then
|
46
|
+
s.add_development_dependency(%q<thoughtbot-shoulda>, [">= 0"])
|
47
|
+
else
|
48
|
+
s.add_dependency(%q<thoughtbot-shoulda>, [">= 0"])
|
49
|
+
end
|
50
|
+
else
|
51
|
+
s.add_dependency(%q<thoughtbot-shoulda>, [">= 0"])
|
52
|
+
end
|
53
|
+
end
|
54
|
+
|
metadata
CHANGED
@@ -1,13 +1,13 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: kontocheck
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
hash:
|
4
|
+
hash: 17
|
5
5
|
prerelease:
|
6
6
|
segments:
|
7
7
|
- 0
|
8
8
|
- 0
|
9
|
-
-
|
10
|
-
version: 0.0.
|
9
|
+
- 7
|
10
|
+
version: 0.0.7
|
11
11
|
platform: ruby
|
12
12
|
authors:
|
13
13
|
- Provideal Systems GmbH
|
@@ -17,7 +17,7 @@ autorequire:
|
|
17
17
|
bindir: bin
|
18
18
|
cert_chain: []
|
19
19
|
|
20
|
-
date:
|
20
|
+
date: 2012-03-31 00:00:00 Z
|
21
21
|
dependencies:
|
22
22
|
- !ruby/object:Gem::Dependency
|
23
23
|
name: thoughtbot-shoulda
|
@@ -54,6 +54,7 @@ files:
|
|
54
54
|
- ext/konto_check_raw/konto_check.h
|
55
55
|
- ext/konto_check_raw/konto_check_raw_ruby.c
|
56
56
|
- init.rb
|
57
|
+
- kontocheck.gemspec
|
57
58
|
- lib/konto_check.rb
|
58
59
|
- test/helper.rb
|
59
60
|
- test/test_konto_check.rb
|
@@ -86,10 +87,9 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
86
87
|
requirements: []
|
87
88
|
|
88
89
|
rubyforge_project:
|
89
|
-
rubygems_version: 1.
|
90
|
+
rubygems_version: 1.8.15
|
90
91
|
signing_key:
|
91
92
|
specification_version: 3
|
92
93
|
summary: Checking german BICs/Bank account numbers
|
93
|
-
test_files:
|
94
|
-
|
95
|
-
- test/test_konto_check.rb
|
94
|
+
test_files: []
|
95
|
+
|