LibC: Move crypt() and crypt_r() to the right header file

According to POSIX.1 these should be in <crypt.h>.
This commit is contained in:
Gunnar Beutner 2021-05-01 11:38:19 +02:00 committed by Andreas Kling
parent f05086a5d2
commit ce77caf479
Notes: sideshowbarker 2024-07-18 18:49:58 +09:00
6 changed files with 35 additions and 9 deletions

View File

@ -208,7 +208,9 @@ endif()
add_link_options(--sysroot ${CMAKE_BINARY_DIR}/Root)
include_directories(Userland/Libraries/LibC)
include_directories(Userland/Libraries/LibCrypt)
include_directories(Userland/Libraries/LibM)
include_directories(Userland/Libraries/LibPthread)
include_directories(Userland/Libraries/LibSystem)
include_directories(Userland/Services)
include_directories(Userland)

View File

@ -8,6 +8,8 @@ depends="zlib openssl"
useconfigure=true
configopts="--prefix=/usr/local --disable-utmp --disable-strip --sysconfdir=/etc/ssh --with-ssl-dir=${SERENITY_INSTALL_ROOT}/usr/local/lib"
export LDFLAGS="-lcrypt -lcore"
pre_configure() {
run autoreconf
}

View File

@ -171,14 +171,6 @@ enum {
long sysconf(int name);
struct crypt_data {
int initialized;
char result[65];
};
char* crypt(const char* key, const char* salt);
char* crypt_r(const char* key, const char* salt, struct crypt_data* data);
// If opterr is set (the default), print error messages to stderr.
extern int opterr;
// On errors, optopt is set to the erroneous *character*.

View File

@ -9,6 +9,7 @@
#include <AK/ScopeGuard.h>
#include <LibCore/Account.h>
#include <LibCore/File.h>
#include <crypt.h>
#include <errno.h>
#include <grp.h>
#include <pwd.h>

View File

@ -6,8 +6,9 @@
#include <AK/Base64.h>
#include <AK/Types.h>
#include <LibCrypto/Hash/SHA2.h>
#include <crypt.h>
#include <errno.h>
#include <string.h>
#include <unistd.h>
extern "C" {

View File

@ -0,0 +1,28 @@
/*
* Copyright (c) 2018-2020, Andreas Kling <kling@serenityos.org>
*
* SPDX-License-Identifier: BSD-2-Clause
*/
/* standard symbolic constants and types
*
* values from POSIX standard unix specification
*
* https://pubs.opengroup.org/onlinepubs/9699919799/basedefs/unistd.h.html
*/
#pragma once
#include <sys/cdefs.h>
__BEGIN_DECLS
struct crypt_data {
int initialized;
char result[65];
};
char* crypt(const char* key, const char* salt);
char* crypt_r(const char* key, const char* salt, struct crypt_data* data);
__END_DECLS