Module: PostfixStatusLine::Core
- Defined in:
- ext/postfix_status_line_core.c
Class Method Summary collapse
- .parse(v_str, v_mask, v_hash, v_salt, v_parse_time, v_sha_algo) ⇒ Object
- .parse_header_checks(v_str, v_mask, v_hash, v_salt, v_parse_time, v_sha_algo) ⇒ Object
Class Method Details
.parse(v_str, v_mask, v_hash, v_salt, v_parse_time, v_sha_algo) ⇒ Object
482 483 484 485 486 487 488 489 490 491 492 493 494 495 496 497 498 499 500 501 502 503 504 505 506 507 508 509 510 |
# File 'ext/postfix_status_line_core.c', line 482
static VALUE rb_postfix_status_line_parse(VALUE self, VALUE v_str, VALUE v_mask, VALUE v_hash, VALUE v_salt, VALUE v_parse_time, VALUE v_sha_algo) {
char *str;
size_t len;
bool mask;
bool parse_time;
bool include_hash;
char *salt;
size_t salt_len;
int sha_algo;
DIGEST_SHA digest_sha_func;
if (!parse_init(v_str, v_mask, v_parse_time, v_hash, v_salt, v_sha_algo,
&str, &len, &mask, &parse_time, &include_hash, &salt, &salt_len, &sha_algo, &digest_sha_func)) {
return Qnil;
}
char buf[len + 1];
char *attrs;
VALUE hash = pre_parse(str, len, buf, parse_time, &attrs);
if (NIL_P(hash)) {
return Qnil;
}
split_line2(attrs, mask, hash, include_hash, salt, salt_len, digest_sha_func);
return hash;
}
|
.parse_header_checks(v_str, v_mask, v_hash, v_salt, v_parse_time, v_sha_algo) ⇒ Object
512 513 514 515 516 517 518 519 520 521 522 523 524 525 526 527 528 529 530 531 532 533 534 535 536 537 538 539 540 |
# File 'ext/postfix_status_line_core.c', line 512
static VALUE rb_postfix_status_line_parse_header_checks(VALUE self, VALUE v_str, VALUE v_mask, VALUE v_hash, VALUE v_salt, VALUE v_parse_time, VALUE v_sha_algo) {
char *str;
size_t len;
bool mask;
bool parse_time;
bool include_hash;
char *salt;
size_t salt_len;
int sha_algo;
DIGEST_SHA digest_sha_func;
if (!parse_init(v_str, v_mask, v_parse_time, v_hash, v_salt, v_sha_algo,
&str, &len, &mask, &parse_time, &include_hash, &salt, &salt_len, &sha_algo, &digest_sha_func)) {
return Qnil;
}
char buf[len + 1];
char *attrs;
VALUE hash = pre_parse(str, len, buf, parse_time, &attrs);
if (NIL_P(hash)) {
return Qnil;
}
split_line3(attrs, mask, hash, include_hash, salt, salt_len, digest_sha_func);
return hash;
}
|