1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
|
.\" $NetBSD: vacation.1,v 1.33 2023/04/11 10:34:52 hauke Exp $
.\"
.\" Copyright (c) 1985, 1987, 1990, 1991, 1993
.\" The Regents of the University of California. All rights reserved.
.\"
.\" Redistribution and use in source and binary forms, with or without
.\" modification, are permitted provided that the following conditions
.\" are met:
.\" 1. Redistributions of source code must retain the above copyright
.\" notice, this list of conditions and the following disclaimer.
.\" 2. Redistributions in binary form must reproduce the above copyright
.\" notice, this list of conditions and the following disclaimer in the
.\" documentation and/or other materials provided with the distribution.
.\" 3. Neither the name of the University nor the names of its contributors
.\" may be used to endorse or promote products derived from this software
.\" without specific prior written permission.
.\"
.\" THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
.\" ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
.\" @(#)vacation.1 8.2 (Berkeley) 4/28/95
.\"
.Dd May 6, 2019
.Dt VACATION 1
.Os
.Sh NAME
.Nm vacation
.Nd return
.Dq I am not here
indication
.Sh SYNOPSIS
.Nm
.Fl dIi
.Op Fl f Ar databasefile
.Op Fl m Ar messagefile
.Op Fl r Ar interval
.Op Fl t Ar interval
.Nm
.Fl dj
.Op Fl a Ar alias
.Op Fl F Ar F|R|S
.Op Fl f Ar databasefile
.Op Fl m Ar messagefile
.Op Fl s Ar sender
.Op Fl T Ar A|D
.Ar login
.Sh DESCRIPTION
.Nm
returns a message to the sender of a message telling them that you
are currently not reading your mail.
The intended use is in a
.Pa .forward
file.
For example, your
.Pa .forward
file might have:
.Bd -literal -offset indent
\eeric, "|/usr/bin/vacation -a allman eric"
.Ed
which would send messages to you (assuming your login name was eric) and
reply to any messages for
.Dq eric
or
.Dq allman .
.Pp
Available options:
.Bl -tag -width Ds
.It Fl a Ar alias
Handle messages for
.Ar alias
in the same manner as those received for the user's
login name.
.It Fl d
Turn debugging on; don't send an actual message, but print it on stdout.
.It Fl f Ar database_file
Use the specified
.Ar database_file
prefix and append
.Dv \.db
to it instead of
.Dv $HOME/.vacation.db .
.It Fl F Ar F|R|S
Make
.Nm
additionally look in From: (F), Return-Path: (R), or Sender: (S) headers
to determine the From: field.
.It Fl i
.It Fl I
Initialize the vacation database files.
It should be used before you modify your
.Pa .forward
file.
.It Fl j
Do not check if the recipient is present in the
.Dv To:
or
.Dv Cc:
lines.
Usage of this option is strongly discouraged because it will result in
.Nm
replying to mailing lists or other inappropriate places (e.g., messages that
you have been
.Dv Bcc
to).
.It Fl m Ar message_file
Use
.Ar message_file
instead of
.Dv $HOME/.vacation.msg .
.It Fl s Ar sender
Reply to
.Ar sender
instead of the value read from the message.
.It Fl r Ar interval
.It Fl t Ar interval
Set the reply interval to
.Ar interval
days.
If the
.Ar interval
number is followed by
.Dv w ,
.Dv d ,
.Dv h ,
.Dv m ,
or
.Dv s
then the number is interpreted as weeks, days, hours, minutes, or seconds
respectively.
The default
.Ar interval
is one week.
An
.Ar interval
of
.Dq 0
means that
a reply is sent to each message, and an interval of
.Dq Li infinite
(actually, any non-numeric character) will never send more than
one reply.
It should be noted that intervals of
.Dq Li \&0
are quite
dangerous, as it allows mailers to get into
.Dq I am on vacation
loops.
.It Fl T Ar A|D
Make
.Nm
additionally look in Apparently-To: (A) or Delivered-To: (D) headers
to determine the To: field.
.El
.Pp
No message will be sent unless
.Ar login
(or an
.Ar alias
supplied using the
.Fl a
option) is part of either the
.Dq To:
or
.Dq Cc:
headers of the mail.
.Pp
No messages from
.Dq ???-REQUEST ,
.Dq Postmaster ,
.Dq Tn UUCP ,
.Dq MAILER ,
or
.Dq MAILER-DAEMON
will be replied to (where these strings are
case insensitive).
.Pp
No notification is sent if a
.Dq Precedence: bulk
.Dq Precedence: list
.Dq Precedence: junk
line or an
.Dq Auto-Submitted:
line with any qualifier except
.Dq no
are included in the mail headers.
.Nm
will include these headers in its response to avoid auto-responder loops.
.Pp
The people who have sent you messages are maintained as a
.Xr db 3
database in the file
.Pa .vacation.db
in your home directory.
.Pp
.Nm
expects a file
.Pa .vacation.msg ,
in your home directory containing a message to be sent back to each
sender.
It should be an entire message (including headers).
If the message contains the string
.Dv $SUBJECT
then it will will be replaced with the subject of the original message.
For example, it might contain:
.Pp
.Bd -literal -offset indent -compact
From: eric@CS.Berkeley.EDU (Eric Allman)
Subject: I am on vacation
Delivered-By-The-Graces-Of: The Vacation program
I am on vacation until July 22.
Your mail regarding "$SUBJECT" will be read when I return.
If you have something urgent, please contact Keith Bostic
<bostic@CS.Berkeley.EDU>.
--eric
.Ed
.Pp
.Nm
reads the first line from the standard input for a
.Ux
.Dq From
line to determine the sender.
.Xr sendmail 1
includes this
.Dq From
line automatically.
.Pp
Fatal errors, such as calling
.Nm
with incorrect arguments, or with non-existent
.Ar login Ns Ar s ,
are logged in the system log file, using
.Xr syslog 3 .
.Sh FILES
.Bl -tag -width "vacation.dirxxx" -compact
.It Pa ~/.vacation.db
database file
.It Pa ~/.vacation.msg
message to send
.El
.Sh SEE ALSO
.Xr sendmail 1 ,
.Xr syslog 3
.Pp
RFC 2076 ,
RFC 3834
.Sh HISTORY
The
.Nm
command appeared in
.Bx 4.3 .
.Sh BUGS
Adding
.Fl T Ar A
or
.Fl T Ar D
should only be done for misconfigured or non-compliant MTAs.
Doing so may auto-respond to messages that were not supposed to be replied to.
|