So jetzt ist mein Problem (nach erfolgreichem test unter root - byte versenden zw taschenrechner und pc): Wie kann ich den io Port (Parallel) dem normalen User zur verfügung stellen? Vielleicht ne Libary schreiben? (die Byte sende und empfyngs-routinen in eine Lib so dass es keine probleme mit den zugriffsrechten bie outb(...) gibt ???)
Oder geht es nur über ein model (Character-Gerätetreiber?)
Danke, Friedrich
On Wed, Aug 16, 2000 at 03:55:45AM +0200, Friedrich Hagedorn wrote:
So jetzt ist mein Problem (nach erfolgreichem test unter root - byte versenden zw taschenrechner und pc): Wie kann ich den io Port (Parallel) dem normalen User zur verfügung stellen? Vielleicht ne Libary schreiben? (die Byte sende und empfyngs-routinen in eine Lib so dass es keine probleme mit den zugriffsrechten bie outb(...) gibt ???)
Oder geht es nur über ein model (Character-Gerätetreiber?)
Ich denke ja. Alles andere nur fuer root.
Reinhard
Am Tue, 15 Aug 2000 schrieb Reinhard Foerster:
On Wed, Aug 16, 2000 at 03:55:45AM +0200, Friedrich Hagedorn wrote:
So jetzt ist mein Problem (nach erfolgreichem test unter root - byte versenden zw taschenrechner und pc): Wie kann ich den io Port (Parallel) dem normalen User zur verfügung stellen? Vielleicht ne Libary schreiben? (die Byte sende und empfyngs-routinen in eine Lib so dass es keine probleme mit den zugriffsrechten bie outb(...) gibt ???)
Oder geht es nur über ein model (Character-Gerätetreiber?)
Ich denke ja. Alles andere nur fuer root.
Es ginge auch noch über /dev/port: ------------------------ fd = open("/dev/port", O_RDWR); lseek(fd, 378, SEEK_SET); // auf Port 0x378 zugreifen write(fd, 7, 1); // die ersten 3 Bits auf High setzen close(fd); ------------------------ Das Programm kann von jedem ausgeführt werden, der Zugriff auf /dev/port via chmod hat. => SicherheitsRisiko!!!!!!
Ciao, Tobias
Tobias Koenig tokoe82@yahoo.de schrieb:
Es ginge auch noch |ber /dev/port:
fd = open("/dev/port", O_RDWR); lseek(fd, 378, SEEK_SET); // auf Port 0x378 zugreifen write(fd, 7, 1); // die ersten 3 Bits auf High setzen close(fd);
Das Programm kann von jedem ausgef|hrt werden, der Zugriff auf /dev/port via chmod hat. => SicherheitsRisiko!!!!!!
und nicht nur dieses Programm! Damit kann jeder mit Zugriff auf /dev/port z.B. die Tastatur direkt pollen, den IDE-Bus bedienen, SCSI-Hostadapter durcheinanderbringen und aehnliche Schweinereien. So einen Zugriff sollten nur _sehr_ vertrauenswuerdige Personen bekommen. Ich zaehle mich nicht einmal auf meinem System zu diesem Kreis (mal ausgenommen, ich habe mich als root eingeloggt).
Holger
lug-dd@mailman.schlittermann.de