Opened 7 years ago

Closed 7 years ago

Last modified 4 years ago

#1227 closed defect (fixed)

several ironclad tests fail on x8632 lisp

Reported by: rme Owned by:
Priority: normal Milestone:
Component: Compiler Version: trunk
Keywords: Cc: xach@…

Description

Several of Ironclad's tests fail on Version 1.10-dev-r16186 (DarwinX8632).

(ql:quickload :ironclad-tests)
(asdf:oos 'asdf:test-op :ironclad-tests)

At the moment, this is mainly a placeholder ticket. I will be updating it with smaller test cases.

Change History (4)

comment:1 Changed 7 years ago by rme

This is still not a great test case. The function ironclad::aes-encrypt-block is one place where things are going wrong, but that function is a bit more complicated, and my attempts to pare it down to something simpler haven't been fruitful.

(ql:quickload :ironclad)

(defun test ()
  (let ((c (ironclad:make-cipher :aes
				 :key (ironclad:hex-string-to-byte-array
				       "2b7e151628aed2a6abf7158809cf4f3c")
				 :mode :ecb))
	(l (make-array 16 :element-type '(unsigned-byte 8)
		       :initial-element 0))
	(expected #(125 247 107 12 26 184 153 179 62 66 240 71 185 27 84 111)))
    (ironclad::aes-encrypt-block c l 0 l 0)
    (format t "~&  actual: ~s" l)
    (format t "~&expected: ~s" expected)))

The x8632 compiler says:

  actual: #(37 27 106 153 210 52 138 128 145 80 237 124 235 151 86 78)
expected: #(125 247 107 12 26 184 153 179 62 66 240 71 185 27 84 111)

comment:2 Changed 7 years ago by xach

  • Cc xach@… added

comment:3 Changed 7 years ago by rme

  • Resolution set to fixed
  • Status changed from new to closed

Fixed by r16190. The tests pass now.

The test :PRNG-FORTUNA was failing, but that was because the file prng.textvec was missing from the copy of the Ironclad sources as provided by Quicklisp. I downloaded that file from https://github.com/froydnj/ironclad/blob/master/testing/test-vectors/prng.testvec, and the test passed.

comment:4 Changed 4 years ago by rme

  • Milestone Clozure CL 1.10 deleted

Milestone Clozure CL 1.10 deleted

Note: See TracTickets for help on using tickets.