diff options
Diffstat (limited to 'sca-cpp/trunk/hosting/server/load-authn')
-rwxr-xr-x | sca-cpp/trunk/hosting/server/load-authn | 58 |
1 files changed, 58 insertions, 0 deletions
diff --git a/sca-cpp/trunk/hosting/server/load-authn b/sca-cpp/trunk/hosting/server/load-authn new file mode 100755 index 0000000000..fab6dc18fe --- /dev/null +++ b/sca-cpp/trunk/hosting/server/load-authn @@ -0,0 +1,58 @@ +#!/bin/sh + +# Licensed to the Apache Software Foundation (ASF) under one +# or more contributor license agreements. See the NOTICE file +# distributed with this work for additional information +# regarding copyright ownership. The ASF licenses this file +# to you under the Apache License, Version 2.0 (the +# "License"); you may not use this file except in compliance +# with the License. You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, +# software distributed under the License is distributed on an +# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY +# KIND, either express or implied. See the License for the +# specific language governing permissions and limitations +# under the License. + +here=`echo "import os; print os.path.realpath('$0')" | python`; here=`dirname $here` +cd $here +var=$HOME/var +httpd_prefix=`cat $here/../../modules/http/httpd.prefix` + +user=$1 +pass=$2 + +tmp=$3 +if [ "$tmp" = "" ]; then + tmp="$here/tmp" +fi +host=$4 +if [ "$host" = "" ]; then + host="localhost" +fi + +# Get password hash +rm -f $tmp/sqldb/load-authn.passwd +touch $tmp/sqldb/load-authn.passwd +$httpd_prefix/bin/htpasswd -b $tmp/sqldb/load-authn.passwd "$user" "$pass" 2>/dev/null +hash=`cat $tmp/sqldb/load-authn.passwd | awk -F ":" '{ print $2 }'` +rm -f $tmp/sqldb/load-authn.passwd + +# Compute user id +slash=`echo $user | grep "/"` +if [ "$slash" = "" ]; then + id="\"$user\"" +else + id=`echo $user | awk -F "/" '{ printf "\"%s\" \"%s\"", $2, $3 }'` +fi + +# Load into database +cat >$tmp/sqldb/load-authn.sql <<EOF +insert into data values('("authn" $id "user.authn")', '((entry (title "$user") (id "$user") (content (hash "$hash"))))'); +EOF + +$here/../../components/sqldb/pgsql <$tmp/sqldb/load-authn.sql + |