Skip to content

Commit aadcd6c

Browse files
committed
fix(config): ensure strict SMTP password environment variable precedence
1 parent 2187072 commit aadcd6c

2 files changed

Lines changed: 9 additions & 1 deletion

File tree

src/__tests__/config-utils.test.ts

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -83,5 +83,10 @@ describe('config utils', () => {
8383
process.env.KDM_SMTP_PASSWORD = 'env-password';
8484
settings = getSMTPSettings();
8585
expect(settings.auth.pass).toBe('env-password');
86+
87+
// Case 3: Env variable set to empty string, should be honored instead of falling back to config password
88+
process.env.KDM_SMTP_PASSWORD = '';
89+
settings = getSMTPSettings();
90+
expect(settings.auth.pass).toBe('');
8691
});
8792
});

src/utils/config.ts

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -36,7 +36,10 @@ export const getSMTPSettings = () => {
3636
port: config.get('email_port') || 587,
3737
auth: {
3838
user: config.get('email_user'),
39-
pass: process.env.KDM_SMTP_PASSWORD || config.get('email_password'),
39+
pass:
40+
process.env.KDM_SMTP_PASSWORD !== undefined
41+
? process.env.KDM_SMTP_PASSWORD
42+
: config.get('email_password'),
4043
},
4144
to: config.get('email_to'),
4245
};

0 commit comments

Comments
 (0)