Executing Shell Command

From: "Nicholas Walker" <nick(at)walkerdatanet(dot)com>
To: <pgsql-general(at)postgresql(dot)org>
Subject: Executing Shell Command
Date: 2003-11-27 02:21:38
Message-ID: 000501c3b48d$302efcc0$030aa8c0@walkeris.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-general

I have been trying to execute a shell command from within postgresql

My C Function

#include <stdlib.h>
#include<postgres.h>


void shell_exec(text arg)
{
system(arg.vl_dat);
}

The function in postgres

CREATE FUNCTION xp_shellexec(text) RETURNS void
AS '/home/psql/cfuncs/shellexec', 'shell_exec'
LANGUAGE C STRICT;

Then run SELECT xp_shellexec('mkdir /home/psql/testing')

No error message, it runs, but the directory isn't created.

The C function works if I compile it, and run myself from the shell,
And I even just tried doing this:
void shell_exec(text arg)
{
system("mkdir /home/psql/testing");
}

and it still didn't work.
the directory has rwx permissions for everyone
I am running freebsd 5.1, and the most recent version of postgres

Can someone give me some help?

Thanks



Responses

Browse pgsql-general by date

  From Date Subject
Next Message Doug McNaught 2003-11-27 02:49:57 Re: disaster recovery
Previous Message Jason Tesser 2003-11-27 02:11:38 Re: pam authentication for postgres