[linux-l] Arrays in C (was: SuSE 9.3 und gshadow)
Oliver Bandel
oliver at first.in-berlin.de
Mo Nov 21 00:04:40 CET 2005
Huch?
Noch ne Antwort auf so ein altes Thema?
Untergegangen im Wust der Mails....
On Thu, Nov 10, 2005 at 10:33:03PM +0100, Axel Wei wrote:
> Oliver Bandel schrieb:
> > > Geht denn nu:
> > >
> > > execv(argv[1], argv + 1);
> > >
> > > eigentlich?
> >
> > In welchem Sinne meinst Du, ob es geht?
> >
> > Vom Typ her geht es schon, aber weder hält es sich an gängige
> > Konventionen (argv[0] soll dem Namen des aufgerufenen Programms
> > entsprechen), noch wird es sinnvoll funktionieren für jedes Argument.
>
> Im gegebenen Kontext war argv[1] der Programmname,
Warum eigene Moden einführnßn?
> und alle weiteren
> Argumente die Argumente für das aufzurufende Programm. Natürlich müss
> man überprüfen, ob argv[1] einen 'guten' Programmnamen enthält.
Man muß auch schauen, ob es nicht knallt, wenn mal nicht das drin steht,
was man gerne drin haben will...
.... wenn bestimmte Felder bestzt sein müssen, da es ansonsten rumst,
sollte man nicht mit eigener Programmiererei davon ausgehen, daß die eigenen
Moden, die man einführt, und wo man normalerweise in gewisser Weise belegte
Felder anders belegt, auch immer so nach eigenem Gusteo gemacht wird.
Man sollte sich für solide Programmierung schon auch an die Gegebenheiten
des Betriebssystems, auf dem man arbietet, halten.
Ansonsten bitte ein ganz großes Schild drüber hängen, auf dem steht:
"Ich programmiere nach meiner eigenen Nase und wenn es kracht
weiß ich, daß es mein eigener Fehler war, aber vermutlich werde ich
dann doch schimpfen, was das für ein Scheiß ist, den andere verzapft haben."
Oder Kurz: Man kann das Ignoranten-Schild drauf hängen.
In argv[0] kommt der Name des programms (per Konvention).
Auf jeden Fall aber muß argv[0] vorhanden sein, auch wenn
da - wider jegl. Konvention - Bullshit drin steht.
Ciao,
Oliver
>
> Axel
> _______________________________________________
> linux-l mailing list
> linux-l at mlists.in-berlin.de
> Die Mailingliste der BeLUG (Berliner Linux User Group)
>
> Wenn du diese Mailingliste abbestellen willst, gehe bitte auf
> https://mlists.in-berlin.de/mailman/listinfo/linux-l
> und trage dich dort bitte aus
Mehr Informationen über die Mailingliste linux-l