#!/usr/bin/perl
#
# remctl backend for testing password change via remctl.
#
# The password change call should get "password" as its only argument (the
# subcommand) and the new password on standard input.  Create a file named
# password-input and store the authenticated user and the password in that
# file.
#
# Written by Russ Allbery <eagle@eyrie.org>
# Copyright 2014
#     The Board of Trustees of the Leland Stanford Junior University
#
# See LICENSE for licensing terms.

use 5.006;
use strict;
use warnings;

# Verify that the argument is correct.
if ($ARGV[0] ne 'password') {
    die "First argument is '$ARGV[0]', not password\n";
}
if (@ARGV != 1) {
    die 'Saw ', scalar(@ARGV), " arguments instead of 1\n";
}

# Save the authenticated user and the input.
open (my $data, '>', 'password-input')
    or die "$0: cannot create password-input: $!\n";
print {$data} "$ENV{REMOTE_USER}\n";
print {$data} <STDIN>;
exit 0;
