summaryrefslogtreecommitdiffstats
path: root/src/local/command.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/local/command.c')
-rw-r--r--src/local/command.c5
1 files changed, 4 insertions, 1 deletions
diff --git a/src/local/command.c b/src/local/command.c
index 4781daf..368307d 100644
--- a/src/local/command.c
+++ b/src/local/command.c
@@ -17,7 +17,8 @@
/* Duplicate commands for the same recipient are suppressed.
/* A limited amount of information is exported via the environment:
/* HOME, SHELL, LOGNAME, USER, EXTENSION, DOMAIN, RECIPIENT (entire
-/* address) LOCAL (just the local part) and SENDER. The exported
+/* address) LOCAL (just the local part), SENDER, and ENVID
+/* (see RFC 3461). The exported
/* information is censored with var_cmd_filter.
/*
/* Arguments:
@@ -169,6 +170,8 @@ int deliver_command(LOCAL_STATE state, USER_ATTR usr_attr, const char *comma
if (state.msg_attr.rcpt.orig_addr && state.msg_attr.rcpt.orig_addr[0])
argv_add(env, "ORIGINAL_RECIPIENT", state.msg_attr.rcpt.orig_addr,
ARGV_END);
+ if (state.request->dsn_envid[0])
+ argv_add(env, "ENVID", state.request->dsn_envid, ARGV_END);
#define EXPORT_REQUEST(name, value) \
if ((value)[0]) argv_add(env, (name), (value), ARGV_END);