[Java] bestandsrechten en owner/group opvragen *

Pagina: 1
Acties:

  • eppie
  • Registratie: Maart 2000
  • Niet online
(overleden)
Hallo,

Al een tijdje ben ik nu druk met een ftp servertje dat in java geschreven is.
Nou lukt het me al wel om een file list te sturen naar de client, alleen heb ik bijvoorbeeld het probleem met leechftp dat hij zodra die de lijst binnen heeft, er allemaal listerrors komen en er geen filelisting komt te staan.

Nou zag ik dat er een listing als volgt moest uitzien:

code:
1
2
3
drw-rw-rw-   1 user     group           0 Jun 29  2006 uml
drw-rw-rw-   1 user     group           0 Jun 29  2006 website
drw-rw-rw-   1 user     group           0 Jun 29  2006 zeeslag


Naam, grootte en datum lukt me nog wel , maar die rechten, owner en group krijg ik niet voor elkaar. (en wat betekend die kolom 1tjes?)

Weet iemand hoe ik dat kan oplossen of waar ik het ongeveer moet zoeken?

Alvast bedankt.

  • curry684
  • Registratie: Juni 2000
  • Laatst online: 13-08 16:46

curry684

left part of the evil twins

Heb je de RFC's over FTP er al eens op nageslagen?

Professionele website nodig?


  • .oisyn
  • Registratie: September 2000
  • Laatst online: 12:02

.oisyn

Moderator Devschuur®

Demotivational Speaker

Verder heeft dit weinig met java te maken natuurlijk

Give a man a game and he'll have fun for a day. Teach a man to make games and he'll never have fun again.


  • eppie
  • Registratie: Maart 2000
  • Niet online
(overleden)
Ja de rfc heb ik gelezen maar mij gaat het er om HOE ik aan die group, owner en rechten info kom onder java. Net zoals je met File.size() de grootte weet, maar ik kan nergens vinden hoe je de rest kan opvragen.

  • .oisyn
  • Registratie: September 2000
  • Laatst online: 12:02

.oisyn

Moderator Devschuur®

Demotivational Speaker

Oh, dan had je je vraag en je topictitel wel wat beter mogen formuleren

Je wilt dus vanuit Java de rechten en groepen opvragen van bestanden (zeg dat dan gewoon :P). Wellicht is het handig om er even erbij te vermelden onder welk OS je werkt, want onder windows werkt het natuurlijk heel anders dan onder *nix.

Maar als het een *nix systeem is dan zou je een child process kunnen spawnen dat de dir output (ls), en daar de output van opvragen. Als het windows is dan kun je zelf wat verzinnen :)

Give a man a game and he'll have fun for a day. Teach a man to make games and he'll never have fun again.


  • eppie
  • Registratie: Maart 2000
  • Niet online
(overleden)
Ik draai onder windows :)

Maar er is dus niet een of andere methode waarmee je de rechten kan oproepen?

Die oplossing van jouw is nie echt platform onafhankellijk :P

[ Voor 24% gewijzigd door eppie op 23-10-2003 16:14 ]


Verwijderd

eppie schreef op 23 October 2003 @ 16:13:
..

Die oplossing van jouw is nie echt platform onafhankellijk :P
En precies daarom zit het niet ingebakken in java.io.File ;)

[ Voor 20% gewijzigd door Verwijderd op 23-10-2003 16:16 ]


  • MSalters
  • Registratie: Juni 2001
  • Laatst online: 17:14
Rechten onder Windows uitdrukken als Unix rechten doet heel veel pijn. Vergeet de group rechten, die waren onder UNIX al veroudered voordat Windows users had. Wat je moet doen is de Access Control List van de file ophalen, en vergelijken met de user die je impersonate (FTP user login, anonymous==Guest). Die Access Control List bevat authorize en deny rechten. Deze moet je uitpluizen, en op basis daarvan je world en user rechten bepalen. x (execute/directory) is de enige subtiele.

Man hopes. Genius creates. Ralph Waldo Emerson
Never worry about theory as long as the machinery does what it's supposed to do. R. A. Heinlein


  • .oisyn
  • Registratie: September 2000
  • Laatst online: 12:02

.oisyn

Moderator Devschuur®

Demotivational Speaker

eppie schreef op 23 October 2003 @ 16:13:
Maar er is dus niet een of andere methode waarmee je de rechten kan oproepen?

Die oplossing van jouw is nie echt platform onafhankellijk :P


oh, dat vergat ik er idd bij te zetten. Dat bestaat dus niet, omdat het filesystem nou juist niet platform onafhankelijk is, zoals fladder al zegt. Maar goed, je kunt het natuurlijk wel verzinnen aan de hand van de rechten van het useraccount in het ftp programma. Het is dus drwxrwxrwx, waarbij de voorste d aangeeft of het een directory is of niet, en elke rwx geeft read, write en execute rechten voor respectievelijk de owner, de group en iedereen

.edit: dus even ervan uitgegaan dat de ftp server bij alle files mag, of dat ie op een schijf zonder rechten werkt. Ander moet je natuurlijk MSalter's methode pakken, wat het ook gelijk een stuk lastiger maakt :)

[ Voor 14% gewijzigd door .oisyn op 23-10-2003 16:50 ]

Give a man a game and he'll have fun for a day. Teach a man to make games and he'll never have fun again.

Pagina: 1