(void) close(stmp_fd);
/*
- * Check EDITOR and VISUAL environment variables to see which editor
+ * Check VISUAL and EDITOR environment variables to see which editor
* the user wants to use (we may not end up using it though).
* If the path is not fully-qualified, make it so and check that
* the specified executable actually exists.
*/
- if ((UserEditor = getenv("EDITOR")) == NULL || *UserEditor == '\0')
- UserEditor = getenv("VISUAL");
+ if ((UserEditor = getenv("VISUAL")) == NULL || *UserEditor == '\0')
+ UserEditor = getenv("EDITOR");
if (UserEditor && *UserEditor == '\0')
UserEditor = NULL;
else if (UserEditor) {
at compile-time that may be overridden via the I<editor> I<sudoers>
C<Default> variable. This list defaults to the path to vi(1) on
your system, as determined by the I<configure> script. Normally,
-B<visudo> does not honor the C<EDITOR> or C<VISUAL> environment
+B<visudo> does not honor the C<VISUAL> or C<EDITOR> environment
variables unless they contain an editor in the aforementioned editors
list. However, if B<visudo> is configured with the I<--with-enveditor>
flag or the I<enveditor> C<Default> variable is set in I<sudoers>,
-B<visudo> will use any the editor defines by C<EDITOR> or C<VISUAL>.
+B<visudo> will use any the editor defines by C<VISUAL> or C<EDITOR>.
Note that this can be a security hole since it allows the user to
-execute any program they wish simply by setting C<EDITOR> or C<VISUAL>.
+execute any program they wish simply by setting C<VISUAL> or C<EDITOR>.
B<visudo> parses the I<sudoers> file after the edit and will
not save the changes if there is a syntax error. Upon finding
The following environment variables are used only if B<visudo>
was configured with the I<--with-env-editor> option:
- EDITOR Invoked by visudo as the editor to use
- VISUAL Used by visudo if EDITOR is not set
+ VISUAL Invoked by visudo as the editor to use
+ EDITOR Used by visudo if VISUAL is not set
=head1 FILES