konto_check 6.05.0 → 6.07.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/ext/konto_check_raw/konto_check.c +78 -320
- data/ext/konto_check_raw/konto_check_raw_ruby.c +1 -1
- metadata +2 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 0e01b9c5d9e7333a532c04f6125cc8097b78c82af1778cb4a232762856fb2313
|
4
|
+
data.tar.gz: 408c6faf06401783feaa9013384ba99cfa3d566b58fc08bc33c8680fadccaa32
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 11e9b9617de97cd3607580faffbdd1f1ed33aa693d386d3b20c39d77da00cdefce8ec89dab0d342145da95b1dc6d538376fc72fe139dca9360bac16d83f52f7c
|
7
|
+
data.tar.gz: 8532bdd2def31fb363281c4fd4475756e878cd72cc54c7b01a350bf5a5f5503c57a6fdd5b4e93e35a12fa69011ec8ac09d662b290e4412501de66dfe585701c1
|
@@ -49,11 +49,11 @@
|
|
49
49
|
|
50
50
|
/* Definitionen und Includes */
|
51
51
|
#ifndef VERSION
|
52
|
-
#define VERSION "6.
|
52
|
+
#define VERSION "6.07 (final)"
|
53
53
|
#define VERSION_MAJOR 6
|
54
|
-
#define VERSION_MINOR
|
54
|
+
#define VERSION_MINOR 07
|
55
55
|
#endif
|
56
|
-
#define VERSION_DATE "2018-
|
56
|
+
#define VERSION_DATE "2018-12-04"
|
57
57
|
|
58
58
|
#ifndef INCLUDE_KONTO_CHECK_DE
|
59
59
|
#define INCLUDE_KONTO_CHECK_DE 1
|
@@ -104,8 +104,8 @@ static lzo_align_t __LZO_MMODEL wrkmem[LZO1X_1_MEM_COMPRESS];
|
|
104
104
|
#define KONTO_CHECK_VARS
|
105
105
|
#include "konto_check.h"
|
106
106
|
|
107
|
-
/* Flag, um die �nderungen zum
|
108
|
-
static int
|
107
|
+
/* Flag, um die �nderungen zum Dezember 2018 zu aktivieren */
|
108
|
+
static int pz_aenderungen_aktivieren_2018_12;
|
109
109
|
|
110
110
|
/* falls die Variable verbose_debug gesetzt wird, werden bei einigen
|
111
111
|
* Funktionen mittels perror() zus�tzliche Debuginfos ausgegeben. Die
|
@@ -6184,182 +6184,8 @@ static int iban_regel_cvt(char *blz,char *kto,const char **bicp,int regel_versio
|
|
6184
6184
|
/* Iban-Regel 0030.00 +���3 */
|
6185
6185
|
/* Pommersche Volksbank eG */
|
6186
6186
|
case 30:
|
6187
|
-
|
6188
|
-
|
6189
|
-
/* ab September 2018 entf�llt die Regel 45, bleibt jedoch frei */
|
6190
|
-
if(pz_aenderungen_aktivieren_2018_09)return OK;
|
6191
|
-
|
6192
|
-
/* diese Bank hat gleich eine lange Reihe Konten, die trotz
|
6193
|
-
* fehlerhafter Pr�fziffer umzuwandeln sind. Der Einfachheit halber
|
6194
|
-
* werden die Kontonummern in zwei Teile aufgeteilt (die beiden
|
6195
|
-
* ersten Stellen und die restlichen 8); diese passen dann bequem
|
6196
|
-
* in zwei 32Bit-Integer und k�nnen �ber zwei geschachtelte
|
6197
|
-
* switch() Anweisungen verarbeitet werden.
|
6198
|
-
*/
|
6199
|
-
switch(k1){
|
6200
|
-
case 0:
|
6201
|
-
switch(k2){
|
6202
|
-
case 1718190: return OK_IBAN_WITHOUT_KC_TEST;
|
6203
|
-
case 22000225: return OK_IBAN_WITHOUT_KC_TEST;
|
6204
|
-
case 49902271: return OK_IBAN_WITHOUT_KC_TEST;
|
6205
|
-
case 49902280: return OK_IBAN_WITHOUT_KC_TEST;
|
6206
|
-
default: break;
|
6207
|
-
}
|
6208
|
-
break;
|
6209
|
-
|
6210
|
-
case 1:
|
6211
|
-
switch(k2){
|
6212
|
-
case 1680029: return OK_IBAN_WITHOUT_KC_TEST;
|
6213
|
-
case 4200028: return OK_IBAN_WITHOUT_KC_TEST;
|
6214
|
-
case 6200025: return OK_IBAN_WITHOUT_KC_TEST;
|
6215
|
-
case 8000171: return OK_IBAN_WITHOUT_KC_TEST;
|
6216
|
-
case 8000279: return OK_IBAN_WITHOUT_KC_TEST;
|
6217
|
-
case 8001364: return OK_IBAN_WITHOUT_KC_TEST;
|
6218
|
-
case 8001801: return OK_IBAN_WITHOUT_KC_TEST;
|
6219
|
-
case 8002514: return OK_IBAN_WITHOUT_KC_TEST;
|
6220
|
-
default: break;
|
6221
|
-
}
|
6222
|
-
break;
|
6223
|
-
|
6224
|
-
case 3:
|
6225
|
-
if(k2==8542) return OK_IBAN_WITHOUT_KC_TEST;
|
6226
|
-
break;
|
6227
|
-
|
6228
|
-
case 91:
|
6229
|
-
switch(k2){
|
6230
|
-
case 30099995: return OK_IBAN_WITHOUT_KC_TEST;
|
6231
|
-
case 30500002: return OK_IBAN_WITHOUT_KC_TEST;
|
6232
|
-
case 31100008: return OK_IBAN_WITHOUT_KC_TEST;
|
6233
|
-
case 31600000: return OK_IBAN_WITHOUT_KC_TEST;
|
6234
|
-
case 31610006: return OK_IBAN_WITHOUT_KC_TEST;
|
6235
|
-
case 32200006: return OK_IBAN_WITHOUT_KC_TEST;
|
6236
|
-
case 32400005: return OK_IBAN_WITHOUT_KC_TEST;
|
6237
|
-
case 32600004: return OK_IBAN_WITHOUT_KC_TEST;
|
6238
|
-
case 32700017: return OK_IBAN_WITHOUT_KC_TEST;
|
6239
|
-
case 32700025: return OK_IBAN_WITHOUT_KC_TEST;
|
6240
|
-
case 32700033: return OK_IBAN_WITHOUT_KC_TEST;
|
6241
|
-
case 32700041: return OK_IBAN_WITHOUT_KC_TEST;
|
6242
|
-
case 33200700: return OK_IBAN_WITHOUT_KC_TEST;
|
6243
|
-
case 33200735: return OK_IBAN_WITHOUT_KC_TEST;
|
6244
|
-
case 33200743: return OK_IBAN_WITHOUT_KC_TEST;
|
6245
|
-
case 33200751: return OK_IBAN_WITHOUT_KC_TEST;
|
6246
|
-
case 33200786: return OK_IBAN_WITHOUT_KC_TEST;
|
6247
|
-
case 33200808: return OK_IBAN_WITHOUT_KC_TEST;
|
6248
|
-
case 33200816: return OK_IBAN_WITHOUT_KC_TEST;
|
6249
|
-
case 33200824: return OK_IBAN_WITHOUT_KC_TEST;
|
6250
|
-
case 33200832: return OK_IBAN_WITHOUT_KC_TEST;
|
6251
|
-
case 36700003: return OK_IBAN_WITHOUT_KC_TEST;
|
6252
|
-
case 77300010: return OK_IBAN_WITHOUT_KC_TEST;
|
6253
|
-
case 77300060: return OK_IBAN_WITHOUT_KC_TEST;
|
6254
|
-
case 98100002: return OK_IBAN_WITHOUT_KC_TEST;
|
6255
|
-
case 98200007: return OK_IBAN_WITHOUT_KC_TEST;
|
6256
|
-
case 98200104: return OK_IBAN_WITHOUT_KC_TEST;
|
6257
|
-
case 98300001: return OK_IBAN_WITHOUT_KC_TEST;
|
6258
|
-
default: break;
|
6259
|
-
}
|
6260
|
-
break;
|
6261
|
-
|
6262
|
-
case 93:
|
6263
|
-
switch(k2){
|
6264
|
-
case 31300141: return OK_IBAN_WITHOUT_KC_TEST;
|
6265
|
-
case 31300150: return OK_IBAN_WITHOUT_KC_TEST;
|
6266
|
-
case 31401010: return OK_IBAN_WITHOUT_KC_TEST;
|
6267
|
-
case 31401061: return OK_IBAN_WITHOUT_KC_TEST;
|
6268
|
-
case 49010000: return OK_IBAN_WITHOUT_KC_TEST;
|
6269
|
-
case 49100000: return OK_IBAN_WITHOUT_KC_TEST;
|
6270
|
-
case 60500001: return OK_IBAN_WITHOUT_KC_TEST;
|
6271
|
-
case 64902007: return OK_IBAN_WITHOUT_KC_TEST;
|
6272
|
-
case 66101001: return OK_IBAN_WITHOUT_KC_TEST;
|
6273
|
-
case 66104000: return OK_IBAN_WITHOUT_KC_TEST;
|
6274
|
-
case 70620030: return OK_IBAN_WITHOUT_KC_TEST;
|
6275
|
-
case 70620080: return OK_IBAN_WITHOUT_KC_TEST;
|
6276
|
-
case 71900010: return OK_IBAN_WITHOUT_KC_TEST;
|
6277
|
-
case 73600005: return OK_IBAN_WITHOUT_KC_TEST;
|
6278
|
-
default: break;
|
6279
|
-
}
|
6280
|
-
break;
|
6281
|
-
|
6282
|
-
case 94:
|
6283
|
-
if(k2==2900021)return OK_IBAN_WITHOUT_KC_TEST;
|
6284
|
-
break;
|
6285
|
-
|
6286
|
-
case 96:
|
6287
|
-
switch(k2){
|
6288
|
-
case 5110000: return OK_IBAN_WITHOUT_KC_TEST;
|
6289
|
-
case 14001000: return OK_IBAN_WITHOUT_KC_TEST;
|
6290
|
-
case 15000016: return OK_IBAN_WITHOUT_KC_TEST;
|
6291
|
-
case 15010003: return OK_IBAN_WITHOUT_KC_TEST;
|
6292
|
-
case 18500036: return OK_IBAN_WITHOUT_KC_TEST;
|
6293
|
-
case 31020000: return OK_IBAN_WITHOUT_KC_TEST;
|
6294
|
-
case 32600051: return OK_IBAN_WITHOUT_KC_TEST;
|
6295
|
-
case 32600060: return OK_IBAN_WITHOUT_KC_TEST;
|
6296
|
-
case 35000012: return OK_IBAN_WITHOUT_KC_TEST;
|
6297
|
-
case 35000020: return OK_IBAN_WITHOUT_KC_TEST;
|
6298
|
-
case 35701002: return OK_IBAN_WITHOUT_KC_TEST;
|
6299
|
-
case 36010003: return OK_IBAN_WITHOUT_KC_TEST;
|
6300
|
-
case 36013002: return OK_IBAN_WITHOUT_KC_TEST;
|
6301
|
-
case 36016001: return OK_IBAN_WITHOUT_KC_TEST;
|
6302
|
-
case 36018004: return OK_IBAN_WITHOUT_KC_TEST;
|
6303
|
-
case 36019000: return OK_IBAN_WITHOUT_KC_TEST;
|
6304
|
-
case 36022001: return OK_IBAN_WITHOUT_KC_TEST;
|
6305
|
-
case 36024004: return OK_IBAN_WITHOUT_KC_TEST;
|
6306
|
-
case 36025000: return OK_IBAN_WITHOUT_KC_TEST;
|
6307
|
-
case 36027003: return OK_IBAN_WITHOUT_KC_TEST;
|
6308
|
-
case 36028000: return OK_IBAN_WITHOUT_KC_TEST;
|
6309
|
-
case 36045001: return OK_IBAN_WITHOUT_KC_TEST;
|
6310
|
-
case 36048000: return OK_IBAN_WITHOUT_KC_TEST;
|
6311
|
-
case 36051001: return OK_IBAN_WITHOUT_KC_TEST;
|
6312
|
-
case 36053004: return OK_IBAN_WITHOUT_KC_TEST;
|
6313
|
-
case 36120003: return OK_IBAN_WITHOUT_KC_TEST;
|
6314
|
-
case 36140004: return OK_IBAN_WITHOUT_KC_TEST;
|
6315
|
-
case 36150000: return OK_IBAN_WITHOUT_KC_TEST;
|
6316
|
-
case 36320002: return OK_IBAN_WITHOUT_KC_TEST;
|
6317
|
-
case 36700000: return OK_IBAN_WITHOUT_KC_TEST;
|
6318
|
-
case 38120000: return OK_IBAN_WITHOUT_KC_TEST;
|
6319
|
-
case 39401100: return OK_IBAN_WITHOUT_KC_TEST;
|
6320
|
-
case 39801001: return OK_IBAN_WITHOUT_KC_TEST;
|
6321
|
-
case 70010004: return OK_IBAN_WITHOUT_KC_TEST;
|
6322
|
-
case 80610000: return OK_IBAN_WITHOUT_KC_TEST;
|
6323
|
-
default: break;
|
6324
|
-
}
|
6325
|
-
break;
|
6326
|
-
|
6327
|
-
case 97:
|
6328
|
-
switch(k2){
|
6329
|
-
case 5010002: return OK_IBAN_WITHOUT_KC_TEST;
|
6330
|
-
case 5403004: return OK_IBAN_WITHOUT_KC_TEST;
|
6331
|
-
case 5404000: return OK_IBAN_WITHOUT_KC_TEST;
|
6332
|
-
case 5509996: return OK_IBAN_WITHOUT_KC_TEST;
|
6333
|
-
case 7901001: return OK_IBAN_WITHOUT_KC_TEST;
|
6334
|
-
case 36010000: return OK_IBAN_WITHOUT_KC_TEST;
|
6335
|
-
case 80100050: return OK_IBAN_WITHOUT_KC_TEST;
|
6336
|
-
case 91000030: return OK_IBAN_WITHOUT_KC_TEST;
|
6337
|
-
default: break;
|
6338
|
-
}
|
6339
|
-
break;
|
6340
|
-
|
6341
|
-
case 99:
|
6342
|
-
switch(k2){
|
6343
|
-
case 90001003: return OK_IBAN_WITHOUT_KC_TEST;
|
6344
|
-
case 90001100: return OK_IBAN_WITHOUT_KC_TEST;
|
6345
|
-
case 90002000: return OK_IBAN_WITHOUT_KC_TEST;
|
6346
|
-
case 90004002: return OK_IBAN_WITHOUT_KC_TEST;
|
6347
|
-
case 91020001: return OK_IBAN_WITHOUT_KC_TEST;
|
6348
|
-
case 91040002: return OK_IBAN_WITHOUT_KC_TEST;
|
6349
|
-
case 91060003: return OK_IBAN_WITHOUT_KC_TEST;
|
6350
|
-
case 99999993: return OK_IBAN_WITHOUT_KC_TEST;
|
6351
|
-
case 99999994: return OK_IBAN_WITHOUT_KC_TEST;
|
6352
|
-
case 99999995: return OK_IBAN_WITHOUT_KC_TEST;
|
6353
|
-
case 99999996: return OK_IBAN_WITHOUT_KC_TEST;
|
6354
|
-
case 99999997: return OK_IBAN_WITHOUT_KC_TEST;
|
6355
|
-
case 99999998: return OK_IBAN_WITHOUT_KC_TEST;
|
6356
|
-
case 99999999: return OK_IBAN_WITHOUT_KC_TEST;
|
6357
|
-
default: break;
|
6358
|
-
}
|
6359
|
-
break;
|
6360
|
-
}
|
6361
|
-
RETURN_OK;
|
6362
|
-
|
6187
|
+
/* ab September 2018 entf�llt die Regel 30, bleibt jedoch frei */
|
6188
|
+
return OK;
|
6363
6189
|
|
6364
6190
|
/* Iban-Regeln 0031.01 ... 0035.01 +���3 */
|
6365
6191
|
/* UniCredit Bank AG:
|
@@ -8433,106 +8259,38 @@ static int iban_regel_cvt(char *blz,char *kto,const char **bicp,int regel_versio
|
|
8433
8259
|
/* Iban-Regel 0056.03 +���3 */
|
8434
8260
|
/* SEB AG */
|
8435
8261
|
case 56:
|
8262
|
+
/* ab Dezember 2018 entf�llt die Regel 56, bleibt jedoch frei */
|
8263
|
+
if(pz_aenderungen_aktivieren_2018_12)return OK;
|
8436
8264
|
|
8437
8265
|
/* f�r die folgenden BLZs sind nur zehnstelllige Kontonummern erlaubt: */
|
8438
|
-
|
8439
|
-
|
8440
|
-
|
8441
|
-
|
8442
|
-
|
8443
|
-
|
8444
|
-
|
8445
|
-
|
8446
|
-
|
8447
|
-
|
8448
|
-
|
8449
|
-
|
8450
|
-
|
8451
|
-
|
8452
|
-
|
8453
|
-
|
8454
|
-
|
8455
|
-
|
8456
|
-
|
8457
|
-
|
8458
|
-
|
8459
|
-
|
8460
|
-
|
8461
|
-
|
8462
|
-
|
8463
|
-
|
8464
|
-
|
8465
|
-
|
8466
|
-
}
|
8467
|
-
else
|
8468
|
-
switch(b){
|
8469
|
-
case 10010111:
|
8470
|
-
case 13010111:
|
8471
|
-
case 16010111:
|
8472
|
-
case 20010111:
|
8473
|
-
case 21010111:
|
8474
|
-
case 21210111:
|
8475
|
-
case 23010111:
|
8476
|
-
case 25010111:
|
8477
|
-
case 25410111:
|
8478
|
-
case 25910111:
|
8479
|
-
case 26010111:
|
8480
|
-
case 26510111:
|
8481
|
-
case 27010111:
|
8482
|
-
case 28010111:
|
8483
|
-
case 29010111:
|
8484
|
-
case 29210111:
|
8485
|
-
case 30010111:
|
8486
|
-
case 31010111:
|
8487
|
-
case 33010111:
|
8488
|
-
case 35010111:
|
8489
|
-
case 35211012:
|
8490
|
-
case 36010111:
|
8491
|
-
case 36210111:
|
8492
|
-
case 37010111:
|
8493
|
-
case 38010111:
|
8494
|
-
case 39010111:
|
8495
|
-
case 40010111:
|
8496
|
-
case 41010111:
|
8497
|
-
case 42010111:
|
8498
|
-
case 42610112:
|
8499
|
-
case 43010111:
|
8500
|
-
case 44010111:
|
8501
|
-
case 46010111:
|
8502
|
-
case 48010111:
|
8503
|
-
case 50010111:
|
8504
|
-
case 50510111:
|
8505
|
-
case 51010111:
|
8506
|
-
case 51310111:
|
8507
|
-
case 52010111:
|
8508
|
-
case 54210111:
|
8509
|
-
case 55010111:
|
8510
|
-
case 57010111:
|
8511
|
-
case 58510111:
|
8512
|
-
case 59010111:
|
8513
|
-
case 60010111:
|
8514
|
-
case 63010111:
|
8515
|
-
case 65310111:
|
8516
|
-
case 66010111:
|
8517
|
-
case 66610111:
|
8518
|
-
case 67010111:
|
8519
|
-
case 67210111:
|
8520
|
-
case 68010111:
|
8521
|
-
case 68310111:
|
8522
|
-
case 69010111:
|
8523
|
-
case 70010111:
|
8524
|
-
case 72010111:
|
8525
|
-
case 75010111:
|
8526
|
-
case 76010111:
|
8527
|
-
case 79010111:
|
8528
|
-
case 79510111:
|
8529
|
-
case 81010111:
|
8530
|
-
case 82010111:
|
8531
|
-
case 86010111:
|
8532
|
-
if(k1<10)return INVALID_KTO;
|
8533
|
-
default:
|
8534
|
-
break;
|
8535
|
-
}
|
8266
|
+
/* die Liste wurde zum September 2018 kr�ftig gek�rzt */
|
8267
|
+
switch(b){
|
8268
|
+
case 10010111:
|
8269
|
+
case 13010111:
|
8270
|
+
case 20010111:
|
8271
|
+
case 21010111:
|
8272
|
+
case 23010111:
|
8273
|
+
case 25010111:
|
8274
|
+
case 27010111:
|
8275
|
+
case 30010111:
|
8276
|
+
case 36010111:
|
8277
|
+
case 37010111:
|
8278
|
+
case 38010111:
|
8279
|
+
case 39010111:
|
8280
|
+
case 44010111:
|
8281
|
+
case 50010111:
|
8282
|
+
case 50510111:
|
8283
|
+
case 51010111:
|
8284
|
+
case 51310111:
|
8285
|
+
case 55010111:
|
8286
|
+
case 60010111:
|
8287
|
+
case 70010111:
|
8288
|
+
case 76010111:
|
8289
|
+
case 86010111:
|
8290
|
+
if(k1<10)return INVALID_KTO;
|
8291
|
+
default:
|
8292
|
+
break;
|
8293
|
+
}
|
8536
8294
|
RETURN_OK;
|
8537
8295
|
|
8538
8296
|
/* Iban-Regel 0057.00 +���3 */
|
@@ -8552,7 +8310,7 @@ static int iban_regel_cvt(char *blz,char *kto,const char **bicp,int regel_versio
|
|
8552
8310
|
}
|
8553
8311
|
}
|
8554
8312
|
|
8555
|
-
#line
|
8313
|
+
#line 8873 "konto_check.lxx"
|
8556
8314
|
/* Funktion lut_multiple() +���2 */
|
8557
8315
|
/* ###########################################################################
|
8558
8316
|
* # lut_multiple(): Universalfunktion, um zu einer gegebenen Bankleitzahl #
|
@@ -8820,7 +8578,7 @@ DLL_EXPORT int lut_cleanup(void)
|
|
8820
8578
|
FREE(sort_pz_f);
|
8821
8579
|
FREE(sort_plz);
|
8822
8580
|
FREE(sort_iban_regel);
|
8823
|
-
#line
|
8581
|
+
#line 9135 "konto_check.lxx"
|
8824
8582
|
if(name_raw && name_data!=name_raw)
|
8825
8583
|
FREE(name_raw);
|
8826
8584
|
else
|
@@ -8897,7 +8655,7 @@ DLL_EXPORT int lut_cleanup(void)
|
|
8897
8655
|
lut_cleanup(); /* neuer Versuch, aufzur�umen */
|
8898
8656
|
RETURN(INIT_FATAL_ERROR);
|
8899
8657
|
}
|
8900
|
-
#line
|
8658
|
+
#line 9217 "konto_check.lxx"
|
8901
8659
|
init_status&=1;
|
8902
8660
|
init_in_progress=0;
|
8903
8661
|
return OK;
|
@@ -9070,8 +8828,8 @@ static void init_atoi_table(void)
|
|
9070
8828
|
int i,ziffer;
|
9071
8829
|
unsigned long l;
|
9072
8830
|
|
9073
|
-
/* �nderungen zum
|
9074
|
-
if(time(NULL)>
|
8831
|
+
/* �nderungen zum 03.12.2018 aktivieren */
|
8832
|
+
if(time(NULL)>1543791600 ||0)pz_aenderungen_aktivieren_2018_12=1;
|
9075
8833
|
|
9076
8834
|
/* ung�ltige Ziffern; Blanks und Tabs werden ebenfalls als ung�ltig
|
9077
8835
|
* angesehen(!), da die Stellenzuordnung sonst nicht mehr stimmt. Ausnahme:
|
@@ -9364,7 +9122,7 @@ static void init_atoi_table(void)
|
|
9364
9122
|
lut_block_name2[130]="2. SCL Banknamen";
|
9365
9123
|
lut_block_name2[131]="2. SCL Flags";
|
9366
9124
|
lut_blocklen_max=521;
|
9367
|
-
#line
|
9125
|
+
#line 9457 "konto_check.lxx"
|
9368
9126
|
init_status|=1;
|
9369
9127
|
}
|
9370
9128
|
|
@@ -9424,7 +9182,7 @@ static int kto_check_int(char *x_blz,int pz_methode,char *kto)
|
|
9424
9182
|
|
9425
9183
|
switch(pz_methode){
|
9426
9184
|
|
9427
|
-
#line
|
9185
|
+
#line 9520 "konto_check.lxx"
|
9428
9186
|
/* Berechnungsmethoden 00 bis 09 +���3
|
9429
9187
|
Berechnung nach der Methode 00 +���4 */
|
9430
9188
|
/*
|
@@ -11759,7 +11517,7 @@ static int kto_check_int(char *x_blz,int pz_methode,char *kto)
|
|
11759
11517
|
* ######################################################################
|
11760
11518
|
*/
|
11761
11519
|
|
11762
|
-
#line
|
11520
|
+
#line 11531 "konto_check.lxx"
|
11763
11521
|
case 51:
|
11764
11522
|
if(*(kto+2)=='9'){ /* Ausnahme */
|
11765
11523
|
|
@@ -12021,8 +11779,8 @@ static int kto_check_int(char *x_blz,int pz_methode,char *kto)
|
|
12021
11779
|
else
|
12022
11780
|
return FALSE;
|
12023
11781
|
|
12024
|
-
#line
|
12025
|
-
#line
|
11782
|
+
#line 11745 "konto_check.lxx"
|
11783
|
+
#line 11747 "konto_check.lxx"
|
12026
11784
|
/* Berechnung nach der Methode 53 +���4 */
|
12027
11785
|
/*
|
12028
11786
|
* ######################################################################
|
@@ -12321,7 +12079,7 @@ static int kto_check_int(char *x_blz,int pz_methode,char *kto)
|
|
12321
12079
|
* # bewerten. #
|
12322
12080
|
* ######################################################################
|
12323
12081
|
*/
|
12324
|
-
#line
|
12082
|
+
#line 12016 "konto_check.lxx"
|
12325
12083
|
case 57:
|
12326
12084
|
#if DEBUG>0
|
12327
12085
|
if(retvals){
|
@@ -12967,7 +12725,7 @@ static int kto_check_int(char *x_blz,int pz_methode,char *kto)
|
|
12967
12725
|
* # Pr�fzifferberechnung) #
|
12968
12726
|
* ######################################################################
|
12969
12727
|
*/
|
12970
|
-
#line
|
12728
|
+
#line 12596 "konto_check.lxx"
|
12971
12729
|
case 66:
|
12972
12730
|
#if DEBUG>0
|
12973
12731
|
case 2066:
|
@@ -20378,7 +20136,7 @@ static int kto_check_int(char *x_blz,int pz_methode,char *kto)
|
|
20378
20136
|
return NOT_IMPLEMENTED;
|
20379
20137
|
}
|
20380
20138
|
}
|
20381
|
-
#line
|
20139
|
+
#line 18810 "konto_check.lxx"
|
20382
20140
|
|
20383
20141
|
/*
|
20384
20142
|
* ######################################################################
|
@@ -20476,7 +20234,7 @@ DLL_EXPORT int kto_check_blz(char *blz,char *kto)
|
|
20476
20234
|
#if DEBUG>0 /* es werden einige Funktionen benutzt, die nur in der Debug-Variante enthalten sind */
|
20477
20235
|
DLL_EXPORT int kto_check_regel_dbg(char *blz,char *kto,char *blz2,char *kto2,const char **bic,int *regel,RETVAL *retvals)
|
20478
20236
|
{
|
20479
|
-
#line
|
20237
|
+
#line 18908 "konto_check.lxx"
|
20480
20238
|
char *blz_o,buffer[32],kto_o[16],*blz_n,*kto_n,*ptr,*dptr;
|
20481
20239
|
const char *bicp;
|
20482
20240
|
int ret,ret_regel,r,i;
|
@@ -20525,7 +20283,7 @@ DLL_EXPORT int kto_check_regel_dbg(char *blz,char *kto,char *blz2,char *kto2,con
|
|
20525
20283
|
}
|
20526
20284
|
else /* BLZ und Kto gleich */
|
20527
20285
|
return ret;
|
20528
|
-
#line
|
20286
|
+
#line 18957 "konto_check.lxx"
|
20529
20287
|
}
|
20530
20288
|
|
20531
20289
|
#else /* !DEBUG */
|
@@ -20676,7 +20434,7 @@ DLL_EXPORT int kto_check_blz_dbg(char *blz,char *kto,RETVAL *retvals)
|
|
20676
20434
|
* # Copyright (C) 2007 Michael Plugge <m.plugge@hs-mannheim.de> #
|
20677
20435
|
* ###########################################################################
|
20678
20436
|
*/
|
20679
|
-
#line
|
20437
|
+
#line 19108 "konto_check.lxx"
|
20680
20438
|
DLL_EXPORT int kto_check_pz_dbg(char *pz,char *kto,char *blz,RETVAL *retvals)
|
20681
20439
|
{
|
20682
20440
|
int untermethode,pz_methode;
|
@@ -20912,7 +20670,7 @@ DLL_EXPORT int get_lut_info2_b(char *lutname,int *version,char **prolog_p,char *
|
|
20912
20670
|
}
|
20913
20671
|
else
|
20914
20672
|
**user_info_p=0;
|
20915
|
-
#line
|
20673
|
+
#line 19329 "konto_check.lxx"
|
20916
20674
|
FREE(prolog);
|
20917
20675
|
return OK;
|
20918
20676
|
}
|
@@ -21047,20 +20805,20 @@ DLL_EXPORT const char *get_kto_check_version_x(int mode)
|
|
21047
20805
|
case 3:
|
21048
20806
|
return __DATE__ ", " __TIME__; /* Compilierdatum und -zeit */
|
21049
20807
|
case 4: /* Datum der Pr�fziffermethode */
|
21050
|
-
if(
|
21051
|
-
return "
|
20808
|
+
if(pz_aenderungen_aktivieren_2018_12)
|
20809
|
+
return "03.12.2018";
|
21052
20810
|
else
|
21053
|
-
return "
|
20811
|
+
return "02.09.2018 (Aenderungen vom 03.12.2018 enthalten aber noch nicht aktiviert)";
|
21054
20812
|
case 5:
|
21055
|
-
return "
|
20813
|
+
return "03.12.2018";
|
21056
20814
|
case 6:
|
21057
|
-
return "
|
20815
|
+
return "4. Dezember 2018"; /* Klartext-Datum der Bibliotheksversion */
|
21058
20816
|
case 7:
|
21059
20817
|
return "final"; /* Versions-Typ der Bibliotheksversion (development, beta, final) */
|
21060
20818
|
case 8:
|
21061
20819
|
return "6"; /* Hauptversionszahl */
|
21062
20820
|
case 9:
|
21063
|
-
return "
|
20821
|
+
return "07"; /* Unterversionszahl */
|
21064
20822
|
}
|
21065
20823
|
}
|
21066
20824
|
|
@@ -21206,7 +20964,7 @@ DLL_EXPORT int dump_lutfile(char *outputname,UINT4 *required)
|
|
21206
20964
|
default:
|
21207
20965
|
break;
|
21208
20966
|
}
|
21209
|
-
#line
|
20967
|
+
#line 19562 "konto_check.lxx"
|
21210
20968
|
fputc('\n',out);
|
21211
20969
|
while(--i)fputc('=',out);
|
21212
20970
|
fputc('\n',out);
|
@@ -21531,7 +21289,7 @@ DLL_EXPORT const char *iban2bic_id(char *iban,int *retval,int *blz,int *kto)
|
|
21531
21289
|
return iban2bic(iban,retval,b,k);
|
21532
21290
|
}
|
21533
21291
|
|
21534
|
-
#line
|
21292
|
+
#line 19887 "konto_check.lxx"
|
21535
21293
|
/* Funktion iban_gen(), iban_bic_gen() und iban_bic_gen1 +���1 */
|
21536
21294
|
/* ###########################################################################
|
21537
21295
|
* # Die Funktion iban_gen generiert aus Bankleitzahl und Kontonummer eine #
|
@@ -22364,7 +22122,7 @@ DLL_EXPORT int ipi_check(char *zweck)
|
|
22364
22122
|
* # Copyright (C) 2009,2011 Michael Plugge <m.plugge@hs-mannheim.de> #
|
22365
22123
|
* ###########################################################################
|
22366
22124
|
*/
|
22367
|
-
#line
|
22125
|
+
#line 20720 "konto_check.lxx"
|
22368
22126
|
|
22369
22127
|
/* Funktion volltext_zeichen() +���2 */
|
22370
22128
|
/* Diese Funktion gibt f�r Zeichen die bei der Volltextsuche g�ltig sind
|
@@ -23211,7 +22969,7 @@ static int qcmp_bic_h(const void *ap,const void *bp)
|
|
23211
22969
|
return a-b;
|
23212
22970
|
}
|
23213
22971
|
|
23214
|
-
#line
|
22972
|
+
#line 21567 "konto_check.lxx"
|
23215
22973
|
|
23216
22974
|
/* Funktion qcmp_bic() +���3 */
|
23217
22975
|
static int qcmp_bic(const void *ap,const void *bp)
|
@@ -23316,7 +23074,7 @@ static int qcmp_iban_regel(const void *ap,const void *bp)
|
|
23316
23074
|
else
|
23317
23075
|
return a-b;
|
23318
23076
|
}
|
23319
|
-
#line
|
23077
|
+
#line 21582 "konto_check.lxx"
|
23320
23078
|
|
23321
23079
|
/* Funktion init_blzf() +���2
|
23322
23080
|
* Diese Funktion initialisiert das Array mit den Bankleitzahlen f�r alle
|
@@ -23384,7 +23142,7 @@ DLL_EXPORT int konto_check_idx2blz(int idx,int *zweigstelle,int *retval)
|
|
23384
23142
|
}
|
23385
23143
|
|
23386
23144
|
/* Funktion suche_int1() +���2 */
|
23387
|
-
#line
|
23145
|
+
#line 21650 "konto_check.lxx"
|
23388
23146
|
static int suche_int1(int a1,int a2,int *anzahl,int **start_idx,int **zweigstellen_base,int **blz_base,
|
23389
23147
|
int **base_name,int **base_sort,int(*cmp)(const void *, const void *),int cnt,int such_idx)
|
23390
23148
|
{
|
@@ -23435,7 +23193,7 @@ static int suche_int1(int a1,int a2,int *anzahl,int **start_idx,int **zweigstell
|
|
23435
23193
|
}
|
23436
23194
|
|
23437
23195
|
/* Funktion suche_int2() +���2 */
|
23438
|
-
#line
|
23196
|
+
#line 21701 "konto_check.lxx"
|
23439
23197
|
static int suche_int2(int a1,int a2,int *anzahl,int **start_idx,int **zweigstellen_base,int **blz_base,
|
23440
23198
|
int **base_name,int **base_sort,int(*cmp)(const void *, const void *),int such_idx,int pz_suche)
|
23441
23199
|
{
|
@@ -24050,7 +23808,7 @@ static int cmp_suche_sort(const void *ap,const void *bp)
|
|
24050
23808
|
DLL_EXPORT int lut_suche_sort1(int anzahl,int *blz_base,int *zweigstellen_base,int *idx,int *anzahl_o,int **idx_op,int **cnt_op,int uniq)
|
24051
23809
|
{
|
24052
23810
|
int i,j,last_idx,*idx_a,*cnt_o;
|
24053
|
-
#line
|
23811
|
+
#line 22317 "konto_check.lxx"
|
24054
23812
|
|
24055
23813
|
if(idx_op)*idx_op=NULL;
|
24056
23814
|
if(cnt_op)*cnt_op=NULL;
|
@@ -24132,7 +23890,7 @@ DLL_EXPORT int lut_suche_sort2(int anzahl,int *blz,int *zweigstellen,int *anzahl
|
|
24132
23890
|
return OK;
|
24133
23891
|
}
|
24134
23892
|
|
24135
|
-
#line
|
23893
|
+
#line 22400 "konto_check.lxx"
|
24136
23894
|
/* Funktion lut_suche_volltext() +���2 */
|
24137
23895
|
DLL_EXPORT int lut_suche_volltext(char *such_wort,int *anzahl,int *base_name_idx,char ***base_name,
|
24138
23896
|
int *zweigstellen_anzahl,int **start_idx,int **zweigstellen_base,int **blz_base)
|
@@ -24262,7 +24020,7 @@ DLL_EXPORT int lut_suche_blz(int such1,int such2,int *anzahl,int **start_idx,int
|
|
24262
24020
|
return suche_int1(such1,such2,anzahl,start_idx,zweigstellen_base,blz_base,&blz_f,&sort_blz,qcmp_blz,cnt,0);
|
24263
24021
|
}
|
24264
24022
|
|
24265
|
-
#line
|
24023
|
+
#line 22550 "konto_check.lxx"
|
24266
24024
|
/* Funktion lut_suche_bic() +���2 */
|
24267
24025
|
DLL_EXPORT int lut_suche_bic(char *such_name,int *anzahl,int **start_idx,int **zweigstellen_base,
|
24268
24026
|
char ***base_name,int **blz_base)
|
@@ -24353,7 +24111,7 @@ DLL_EXPORT int lut_suche_regel(int such1,int such2,int *anzahl,int **start_idx,i
|
|
24353
24111
|
return suche_int2(such1*100,such2*100+99,anzahl,start_idx,zweigstellen_base,blz_base,&iban_regel,&sort_iban_regel,qcmp_iban_regel,LUT2_IBAN_REGEL_SORT,0);
|
24354
24112
|
}
|
24355
24113
|
|
24356
|
-
#line
|
24114
|
+
#line 22583 "konto_check.lxx"
|
24357
24115
|
|
24358
24116
|
/* Funktion lut_suche_bic_h() +���2 */
|
24359
24117
|
DLL_EXPORT int lut_suche_bic_h(char *such_name,int *anzahl,int **start_idx,int **zweigstellen_base,
|
@@ -24739,7 +24497,7 @@ DLL_EXPORT const char *iban_ort(char *iban,int filiale,int*retval)
|
|
24739
24497
|
{
|
24740
24498
|
return iban_fkt_s(iban,filiale,retval,lut_ort);
|
24741
24499
|
}
|
24742
|
-
#line
|
24500
|
+
#line 22672 "konto_check.lxx"
|
24743
24501
|
|
24744
24502
|
static int bic_fkt_c(char *bic1,int mode,int filiale,int *retval,char *base,int error)
|
24745
24503
|
{
|
@@ -26028,7 +25786,7 @@ DLL_EXPORT const char *pz2str(int pz,int *ret)
|
|
26028
25786
|
default: return "???";
|
26029
25787
|
}
|
26030
25788
|
}
|
26031
|
-
#line
|
25789
|
+
#line 23627 "konto_check.lxx"
|
26032
25790
|
|
26033
25791
|
/* Funktion lut_keine_iban_berechnung() +���1 */
|
26034
25792
|
/*
|
@@ -26143,7 +25901,7 @@ DLL_EXPORT int lut_keine_iban_berechnung(char *iban_blacklist,char *lutfile,int
|
|
26143
25901
|
/* Funktion pz_aenderungen_enable() +���1 */
|
26144
25902
|
/* ###########################################################################
|
26145
25903
|
* # Die Funktion pz_aenderungen_enable() dient dazu, den Status des Flags #
|
26146
|
-
* #
|
25904
|
+
* # pz_aenderungen_aktivieren_2018_12 abzufragen bzw. zu setzen. Falls die Variable #
|
26147
25905
|
* # set 1 ist, werden die �nderungen aktiviert, falls sie 0 ist, werden #
|
26148
25906
|
* # die �nderungen deaktiviert. Bei allen anderen Werten wird das aktuelle #
|
26149
25907
|
* # Flag nicht ver�ndert, sondern nur der Status zur�ckgegeben. #
|
@@ -26159,8 +25917,8 @@ DLL_EXPORT int lut_keine_iban_berechnung(char *iban_blacklist,char *lutfile,int
|
|
26159
25917
|
|
26160
25918
|
DLL_EXPORT int pz_aenderungen_enable(int set)
|
26161
25919
|
{
|
26162
|
-
if(set==0 || set==1)
|
26163
|
-
return
|
25920
|
+
if(set==0 || set==1)pz_aenderungen_aktivieren_2018_12=set;
|
25921
|
+
return pz_aenderungen_aktivieren_2018_12;
|
26164
25922
|
}
|
26165
25923
|
|
26166
25924
|
#if DEBUG>0
|
@@ -26192,7 +25950,7 @@ DLL_EXPORT char *kto_check_test_vars(char *txt,UINT4 i)
|
|
26192
25950
|
#endif
|
26193
25951
|
|
26194
25952
|
|
26195
|
-
#line
|
25953
|
+
#line 23791 "konto_check.lxx"
|
26196
25954
|
/* Funktionen *_id() +���1 */
|
26197
25955
|
/* ###########################################################################
|
26198
25956
|
* # Die folgenden Funktionen sind die id-Varianten von Funktionen, die #
|
@@ -26701,7 +26459,7 @@ DLL_EXPORT int lut_write_scl_blocks(char *inputfile,char *lutfile)
|
|
26701
26459
|
RETURN(OK);
|
26702
26460
|
}
|
26703
26461
|
|
26704
|
-
#line
|
26462
|
+
#line 24300 "konto_check.lxx"
|
26705
26463
|
/* Funktion lut_scl_init() +���3 */
|
26706
26464
|
/* ###########################################################################
|
26707
26465
|
* # Die Funktion lut_scl_init() liest die SCL-Blocks aus einer LUT-Datei #
|
@@ -4358,7 +4358,7 @@ void Init_konto_check_raw()
|
|
4358
4358
|
*
|
4359
4359
|
* <b>ATTENTION:</b> There are a few important changes in the API between
|
4360
4360
|
* version 0.0.2 (version by Peter Horn/Provideal), version 0.0.6 (jeanmartin)
|
4361
|
-
* and this version (V. 6.
|
4361
|
+
* and this version (V. 6.07 from 2018-12-04):
|
4362
4362
|
*
|
4363
4363
|
* * The function KontoCheck::load_bank_data() is no longer used; it is
|
4364
4364
|
* replaced by KontoCheck::init() and KontoCheck::generate_lutfile().
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: konto_check
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 6.
|
4
|
+
version: 6.07.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Provideal Systems GmbH
|
@@ -10,7 +10,7 @@ authors:
|
|
10
10
|
autorequire:
|
11
11
|
bindir: bin
|
12
12
|
cert_chain: []
|
13
|
-
date: 2018-
|
13
|
+
date: 2018-11-29 00:00:00.000000000 Z
|
14
14
|
dependencies:
|
15
15
|
- !ruby/object:Gem::Dependency
|
16
16
|
name: thoughtbot-shoulda
|