package embox.compat.posix

@DefaultImpl(passwd)
abstract module pwd_api {
}

static module passwd extends pwd_api {
	source "pwd_grp.c"

	depends passwd_db
	depends crypt
	depends embox.compat.libc.stdio.scanf_api
	depends embox.compat.libc.stdio.fseek
	depends embox.compat.libc.stdio.file_ops
}

static module pwd_stub extends pwd_api {
	source "pwd_stub.c"
}

@DefaultImpl(passwd_db_static)
abstract module passwd_db { }

module passwd_db_static extends passwd_db {
	source "db_static.h"

	depends embox.compat.posix.passwd_db_files
}

module passwd_db_dynamic extends passwd_db {
	option string db_path = "/tmp"

	source "db_dynamic.c",
		"db_dynamic.h"

	depends embox.compat.posix.passwd_db_files
}

static module crypt {
	source "crypt.c"

	depends embox.lib.LibCrypt
}
