Skip to content

Commit 54215a8

Browse files
committed
fix: severity in mask needs to be calculated
1 parent f8a56ae commit 54215a8

File tree

1 file changed

+8
-6
lines changed

1 file changed

+8
-6
lines changed

lib/posix.js

+8-6
Original file line numberDiff line numberDiff line change
@@ -1,25 +1,27 @@
11
const { facility, severity, flag } = require('syslog-constants');
22

3-
const reduceValues = (props, values) => Object.entries(props).reduce((memo, [key, value]) => {
4-
if (value && values[key]) {
5-
return memo | values[key];
3+
const identity = (value) => value;
4+
const createMask = (value) => Math.pow(2, value);
5+
6+
const reduceValues = (props, values, map) => Object.entries(props).reduce((memo, [key, value]) => {
7+
if (value && Number.isInteger(values[key])) {
8+
return memo | map(values[key]);
69
}
710

811
return memo;
912
}, 0);
1013

1114
module.exports = ({ log, open, close, setmask }) => ({
1215
openlog (id, opt, fac) {
13-
return open(id, reduceValues(opt, flag), Number.isInteger(fac) ? fac : facility[fac]);
16+
return open(id, reduceValues(opt, flag, identity), Number.isInteger(fac) ? fac : facility[fac]);
1417
},
1518
closelog () {
1619
return close();
1720
},
1821
setlogmask (mask) {
19-
return setmask(reduceValues(mask, severity));
22+
return setmask(reduceValues(mask, severity, createMask));
2023
},
2124
syslog (prio, message) {
2225
return log(Number.isInteger(prio) ? prio : severity[prio], message);
2326
},
2427
});
25-

0 commit comments

Comments
 (0)