openwall / openwall/john

The combo --without-openssl and "make debug" fails to build

Open
#5,311 1 comment 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

bug
Dominant language
C
Stars
13.6k
Forks
2.6k
PR merge metrics
No merged PRs in 30d

Description

Some AES sourcery fails.

aes_func.h: In function ‘get_AES_enc128_CBC’:
aes.c:28:95: error: ‘openssl_AES_enc128_CBC’ undeclared (first use in this function); did you mean ‘intel_AES_enc128_CB ’?
   28 |  #define FUNC(r,p) aes_fptr_##r get_##p() { return check_for_aes_instructions() ? intel_##p : openssl_##p; }
      |                                                                                               ^~~~~~~~
aes_func.h:17:2: note: in expansion of macro ‘FUNC’
   17 |  FUNC(cbc, AES_enc##n##_CBC) \
      |  ^~~~
aes_func.h:22:1: note: in expansion of macro ‘FUNC_BITS’
   22 | FUNC_BITS(128)
      | ^~~~~~~~~
aes.c:28:95: note: each undeclared identifier is reported only once for each function it appears in
(...)

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Reproduce the failure with the --without-openssl configuration followed by make debug. Start in aes.c and aes_func.h, where the missing openssl_AES_enc128_CBC symbol is expanded, and trace how the no-OpenSSL build selects implementations. Done means make debug builds successfully without OpenSSL.

Written by the indexing model from the issue text.

Assessment

Tech stack
c
Domain
build-system
Issue type
Bug
Difficulty
3/5
Estimated time
1-2 days
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
42/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.