#include <stdlib.h>
#include <stdio.h>
#include <string.h>
#include <unistd.h>

int main(int argc, char *argv[]) {
	char *_argv[128];
	char buf[1024];
	int i;

	if (argc < 2 || argc >= 127) {
		printf("Usage: %s ... <peername>\n", argv[0]);
		exit(EXIT_FAILURE);
	}

	if (snprintf(buf, sizeof(buf), "pppd-%s", argv[argc - 1]) < 0)
		exit(EXIT_FAILURE);

	_argv[0] = buf;
	for (i = 1; i < argc - 1; i++)
		_argv[i] = argv[i];
	_argv[i++] = "call";
	_argv[i++] = argv[argc - 1];
	_argv[i] = NULL;

	if (chdir("/usr/local/proxima/ppp"))
		exit(EXIT_FAILURE);
	execv(argv[argc - 1], _argv);
	exit(EXIT_FAILURE);
}

