var nodemilter = require('node-milter');
var milter = nodemilter.createMilter({
name: 'test',
flags: 0
});
milter.setCallback('negotiate', function(ctx, f1, f2, f3, f4, callback) {
callback(nodemilter.SMFIS_ALL_OPTS);
});
milter.setCallback('envfrom', function(ctx, argv, callback) {
callback(nodemilter.SMFIS_CONTINUE);
});
milter.listen(10025, function() {
console.log('milter started on port 10025');
});
version
- SMFI_VERSION
return codes
- MI_SUCCESS
- MI_FAILURE
callbacks return codes
- SMFIS_CONTINUE
- SMFIS_REJECT
- SMFIS_DISCARD
- SMFIS_ACCEPT
- SMFIS_TEMPFAIL
- SMFIS_ALL_OPTS
options flag
- SMFIF_ADDHDRS
- SMFIF_CHGHDRS
- SMFIF_CHGBODY
- SMFIF_ADDPRCT
- SMFIF_ADDRCPT_PAR
- SMFIF_DELRCPT
- SMFIF_QUARANTINE
- SMFIF_CHGFROM
- SMFIF_SETSYMLIST
protocol stage
- SMFIM_CONNECT
- SMFIM_HELO
- SMFIM_ENVFROM
- SMFIM_ENVRCPT
- SMFIM_DATA
- SMFIM_EOM
- SMFIM_EOH
- options Object
- name String Default='Unknown'
- version Number Default=SMFI_VERSION
- flag Number Default=0
arguments passthrough net.Server.listen
- name String
- callback Function
name | callback |
---|---|
negotiate | negotiate(ctx, f1, f2, f3, f4, callback) |
connect | connect(ctx, hostname, address, port, callback) |
helo | helo(ctx, helohost, callback) |
envfrom | envfrom(ctx, argv, callback) |
envrcpt | envrcpt(ctx, argv, callback) |
data | data(ctx, callback) |
header | header(ctx, field, value, callback) |
eoh | eoh(ctx, callback) |
body | body(ctx, data, callback) |
eom | eom(ctx, callback) |
close | close(ctx, callback) |
abort | abort(ctx, callback) |
unknown | unknown(ctx, data, callback) |
- ctx Object
- ctx Object
- data
- ctx Object
- symname String
- ctx Object
- rcode String
- xcode String
- ctx Object
- rcode String
- xcode String
- ctx Object
- field String
- value String
- callback Function
- ctx Object
- field String
- index Number
- value String
- callback Function
- ctx Object
- index Number
- field String
- value String
- callback Function
- ctx Object
- from String
- args String
- callback Function
- ctx Object
- rcpt String
- callback Function
- ctx Object
- rcpt String
- args String
- callback Function
- ctx Object
- rcpt String
- callback Function
- ctx Object
- body String | Buffer | Readable
- callback Function
- ctx Object
- callback Function
- ctx Object
- reason String
- callback Function
- ctx Object
- where Number
- macros Array(String)