mirror of
https://github.com/SoftEtherVPN/SoftEtherVPN.git
synced 2025-06-28 11:55:08 +03:00
Change GetExeDir to GetStateDir in Cedar and Mayaqua.
Resolve this AppArmor error by ensuring that certificate files files are written into /var/lib/softether instead of the current working directory: Profile: /usr/sbin/softetherd Operation: mkdir Name: /usr/sbin/chain_certs Denied: c Logfile: /var/log/kern.log type=1400 audit: apparmor="DENIED" operation="mkdir" profile="/usr/sbin/softetherd" name="/usr/sbin/chain_certs/" pid=36448 comm="softetherd" requested_mask="c" denied_mask="c" fsuid=0 ouid=0
This commit is contained in:
parent
b8e39b6651
commit
ba1fa0f1db
@ -146,10 +146,10 @@ bool TryGetRootCertChain(LIST *o, X *x, bool auto_save, X **found_root_x)
|
|||||||
UINT i;
|
UINT i;
|
||||||
DIRLIST *dir;
|
DIRLIST *dir;
|
||||||
wchar_t dirname[MAX_SIZE];
|
wchar_t dirname[MAX_SIZE];
|
||||||
wchar_t exedir[MAX_SIZE];
|
wchar_t statedir[MAX_SIZE];
|
||||||
|
|
||||||
GetExeDirW(exedir, sizeof(exedir));
|
GetStateDirW(statedir, sizeof(statedir));
|
||||||
CombinePathW(dirname, sizeof(dirname), exedir, L"chain_certs");
|
CombinePathW(dirname, sizeof(dirname), statedir, L"chain_certs");
|
||||||
MakeDirExW(dirname);
|
MakeDirExW(dirname);
|
||||||
|
|
||||||
if (auto_save)
|
if (auto_save)
|
||||||
@ -446,7 +446,7 @@ void AddXToCertList(LIST *o, X *x)
|
|||||||
void AddAllChainCertsToCertList(LIST *o)
|
void AddAllChainCertsToCertList(LIST *o)
|
||||||
{
|
{
|
||||||
wchar_t dirname[MAX_SIZE];
|
wchar_t dirname[MAX_SIZE];
|
||||||
wchar_t exedir[MAX_SIZE];
|
wchar_t statedir[MAX_SIZE];
|
||||||
DIRLIST *dir;
|
DIRLIST *dir;
|
||||||
// Validate arguments
|
// Validate arguments
|
||||||
if (o == NULL)
|
if (o == NULL)
|
||||||
@ -454,9 +454,9 @@ void AddAllChainCertsToCertList(LIST *o)
|
|||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
GetExeDirW(exedir, sizeof(exedir));
|
GetStateDirW(statedir, sizeof(statedir));
|
||||||
|
|
||||||
CombinePathW(dirname, sizeof(dirname), exedir, L"chain_certs");
|
CombinePathW(dirname, sizeof(dirname), statedir, L"chain_certs");
|
||||||
|
|
||||||
MakeDirExW(dirname);
|
MakeDirExW(dirname);
|
||||||
|
|
||||||
|
@ -12561,7 +12561,7 @@ void SetWantToUseCipher(SOCK *sock, char *name)
|
|||||||
void AddChainSslCertOnDirectory(struct ssl_ctx_st *ctx)
|
void AddChainSslCertOnDirectory(struct ssl_ctx_st *ctx)
|
||||||
{
|
{
|
||||||
wchar_t dirname[MAX_SIZE];
|
wchar_t dirname[MAX_SIZE];
|
||||||
wchar_t exedir[MAX_SIZE];
|
wchar_t statedir[MAX_SIZE];
|
||||||
wchar_t txtname[MAX_SIZE];
|
wchar_t txtname[MAX_SIZE];
|
||||||
DIRLIST *dir;
|
DIRLIST *dir;
|
||||||
LIST *o;
|
LIST *o;
|
||||||
@ -12575,9 +12575,9 @@ void AddChainSslCertOnDirectory(struct ssl_ctx_st *ctx)
|
|||||||
|
|
||||||
o = NewListFast(NULL);
|
o = NewListFast(NULL);
|
||||||
|
|
||||||
GetExeDirW(exedir, sizeof(exedir));
|
GetStateDirW(statedir, sizeof(statedir));
|
||||||
|
|
||||||
CombinePathW(dirname, sizeof(dirname), exedir, L"chain_certs");
|
CombinePathW(dirname, sizeof(dirname), statedir, L"chain_certs");
|
||||||
|
|
||||||
MakeDirExW(dirname);
|
MakeDirExW(dirname);
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user