+++ /dev/null
-/* $OpenBSD: dir.c,v 1.19 2008/06/13 20:07:40 kjell Exp $ */
-
-/* This file is in the public domain. */
-
-/*
- * Name: MG 2a
- * Directory management functions
- * Created: Ron Flax (ron@vsedev.vse.com)
- * Modified for MG 2a by Mic Kaczmarczik 03-Aug-1987
- */
-
-#include "def.h"
-
-static char mgcwd[NFILEN];
-
-/*
- * Initialize anything the directory management routines need.
- */
-void
-dirinit(void)
-{
- mgcwd[0] = '\0';
- if (getcwd(mgcwd, sizeof(mgcwd)) == NULL) {
- ewprintf("Can't get current directory!");
- chdir("/");
- }
- if (!(mgcwd[0] == '/' && mgcwd [1] == '\0'))
- (void)strlcat(mgcwd, "/", sizeof(mgcwd));
-}
-
-/*
- * Change current working directory.
- */
-/* ARGSUSED */
-int
-changedir(int f, int n)
-{
- char bufc[NFILEN], *bufp;
-
- (void)strlcpy(bufc, mgcwd, sizeof(bufc));
- if ((bufp = eread("Change default directory: ", bufc, NFILEN,
- EFDEF | EFNEW | EFCR | EFFILE)) == NULL)
- return (ABORT);
- else if (bufp[0] == '\0')
- return (FALSE);
- /* Append trailing slash */
- if (chdir(bufc) == -1) {
- ewprintf("Can't change dir to %s", bufc);
- return (FALSE);
- }
- if ((bufp = getcwd(mgcwd, sizeof(mgcwd))) == NULL)
- panic("Can't get current directory!");
- if (mgcwd[strlen(mgcwd) - 1] != '/')
- (void)strlcat(mgcwd, "/", sizeof(mgcwd));
- ewprintf("Current directory is now %s", bufp);
- return (TRUE);
-}
-
-/*
- * Show current directory.
- */
-/* ARGSUSED */
-int
-showcwdir(int f, int n)
-{
- ewprintf("Current directory: %s", mgcwd);
- return (TRUE);
-}
-
-int
-getcwdir(char *buf, size_t len)
-{
- if (strlcpy(buf, mgcwd, len) >= len)
- return (FALSE);
-
- return (TRUE);
-}