Re: [HACKERS] TODO list updated
От | Karl DeBisschop |
---|---|
Тема | Re: [HACKERS] TODO list updated |
Дата | |
Msg-id | 200001131658.LAA22497@skillet.infoplease.com обсуждение исходный текст |
Ответ на | Re: [HACKERS] TODO list updated (Tom Lane <tgl@sss.pgh.pa.us>) |
Ответы |
Re: [HACKERS] TODO list updated
|
Список | pgsql-hackers |
> What I am starting to think is that we do need a C program. However, > it could be very small; it shouldn't try to do all of what initdb does. > All it needs to do is fetch the password from stdin and then echo it > to stdout in an ALTER USER command. The invocation in initdb would > look something like > > securepassword $SUPERUSERNAME | standalone-backend ... > > and the code would be on the order of > > fprintf(stderr, "Please enter password for %s: ", argv[1]); > fgets(stdin, password); > printf("ALTER USER %s PASSWORD '%s'\n", argv[1], password); Why not something like: #include <libpq-fe.h> char *pghost; char *pgport; char *pgoptions; char *pgtty; char *dbName; char *user; char *password;char *query; PGconn *conn; PGresult *res; fprintf(stderr, "Please enter password for %s: ", argv[1]); fgets(stdin, password); pgoptions = NULL; /* special optionsto start up the backend server */ pgtty = NULL; /* debugging tty for the backend server */ conn = PQsetdb(pghost,pgport, pgoptions, pgtty, dbName); sprintf(query,"ALTER USER postgres SET PASSWORD='%s'",password) PGresult=PQexec(conn,query); PQfinish(conn); -- Karl DeBisschop <kdebisschop@alert.infoplease.com> 617.832.0332 (Fax: 617.956.2696) Information Please - your source for FREE online reference http://www.infoplease.com - Your Ultimate Fact Finder http://kids.infoplease.com - The Great Homework Helper Netsaint Plugins Development http://netsaintplug.sourceforge.net
В списке pgsql-hackers по дате отправления: