Anzeige:
Ergebnis 1 bis 3 von 3

Thema: System Call in C Programm funktioniert nicht wenn es als CGI gestartet wird

  1. #1
    Registrierter Benutzer
    Registriert seit
    03.03.2003
    Beiträge
    14

    Post System Call in C Programm funktioniert nicht wenn es als CGI gestartet wird

    Hi All!
    Ich habe ein echt komisches Problem. Zur Verdeutlichung habe ich ein kleines Beispielprogramm erstellt:

    Code:
    #include <stdio.h>
    
    int main()
    {
    printf("Content-type: text/html\n\n");
    system("htpasswd -b /home/fs2/cgi-bin/abspasswd Odysseus test");
    printf("test<br>");
    printf("</body>\n");
    printf("</html>\n"); 
    return (0);
    }
    Wenn ich das Programm aus einer Shell herraus aufrufe entstehen keine Probleme und der System Call wird sauber ausgeführt.

    Wenn ich das programm nun aber als CGI mit
    http://localhost/cgi-bin/test
    starte wird zwar das "test" korrekt ausgegeben und es kommt keine Fehlermeldung, aber der System Call (system()) wird "vergessen". ²³ ? :-/

  2. #2
    Administrator Avatar von anda_skoa
    Registriert seit
    17.11.2001
    Ort
    Graz, Österreich
    Beiträge
    5.477
    Hat der Prozess als CGI die nötigen Rechte für den Befehl, den system ausführen soll?

    Oder vielleicht hat es eine andere PATH Umgebung und findet den Befehl gar nicht.

    Generell bietet es sich an, den Rückgabewert von Funktionen zu checken.

    Ciao,
    _
    Qt/KDE Entwickler
    Debian Benutzer

  3. #3
    Registrierter Benutzer
    Registriert seit
    03.03.2003
    Beiträge
    14
    jo thx, lag an pfad und rechten

Lesezeichen

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •