equal
deleted
inserted
replaced
98 #endif |
98 #endif |
99 { |
99 { |
100 unsigned long a, b, c, d, e; |
100 unsigned long a, b, c, d, e; |
101 typedef union { |
101 typedef union { |
102 unsigned char c[64]; |
102 unsigned char c[64]; |
103 unsigned long l[16]; |
103 unsigned int32 /* long */ l[16]; |
104 } CHAR64LONG16; |
104 } CHAR64LONG16; |
105 CHAR64LONG16* block; |
105 CHAR64LONG16* block; |
106 #ifdef SHA1HANDSOFF |
106 #ifdef SHA1HANDSOFF |
107 static unsigned char workspace[64]; |
107 static unsigned char workspace[64]; |
108 block = (CHAR64LONG16*)workspace; |
108 block = (CHAR64LONG16*)workspace; |
485 |digest| |
485 |digest| |
486 |
486 |
487 digest := ByteArray new:HashSize. |
487 digest := ByteArray new:HashSize. |
488 |
488 |
489 %{ |
489 %{ |
490 if (__isByteArray(__INST(hashContext)) && |
490 OBJ hcon; |
491 __byteArraySize(__INST(hashContext)) == sizeof(SHA1_CTX) && |
491 |
|
492 hcon = __INST(hashContext); |
|
493 if (__isByteArray(hcon) && |
|
494 __byteArraySize(hcon) == sizeof(SHA1_CTX) && |
492 __isByteArray(digest) && |
495 __isByteArray(digest) && |
493 __byteArraySize(digest) == 20 |
496 __byteArraySize(digest) == 20 |
494 ) { |
497 ) { |
495 SHA1_CTX *ctx = (SHA1_CTX *)__ByteArrayInstPtr(__INST(hashContext))->ba_element; |
498 SHA1_CTX *ctx = (SHA1_CTX *)(__ByteArrayInstPtr(hcon)->ba_element); |
496 SHA1_CTX copyContext; |
499 SHA1_CTX copyContext; |
497 |
500 |
498 memcpy(©Context, ctx, sizeof(copyContext)); |
501 memcpy(©Context, ctx, sizeof(SHA1_CTX)); |
499 SHA1Final(__ByteArrayInstPtr(digest)->ba_element, ©Context); |
502 SHA1Final(__ByteArrayInstPtr(digest)->ba_element, ©Context); |
500 RETURN(digest); |
503 RETURN(digest); |
501 } |
504 } |
502 %}. |
505 %}. |
503 |
506 |
577 ! ! |
580 ! ! |
578 |
581 |
579 !SHA1Stream class methodsFor:'documentation'! |
582 !SHA1Stream class methodsFor:'documentation'! |
580 |
583 |
581 version |
584 version |
582 ^ '$Header: /cvs/stx/stx/libbasic/SHA1Stream.st,v 1.35 2013-02-20 15:40:35 cg Exp $' |
585 ^ '$Header: /cvs/stx/stx/libbasic/SHA1Stream.st,v 1.36 2013-02-21 10:44:11 cg Exp $' |
583 ! |
586 ! |
584 |
587 |
585 version_CVS |
588 version_CVS |
586 ^ '$Header: /cvs/stx/stx/libbasic/SHA1Stream.st,v 1.35 2013-02-20 15:40:35 cg Exp $' |
589 ^ '$Header: /cvs/stx/stx/libbasic/SHA1Stream.st,v 1.36 2013-02-21 10:44:11 cg Exp $' |
587 ! ! |
590 ! ! |
588 |
591 |
589 |
592 |
590 SHA1Stream initialize! |
593 SHA1Stream initialize! |