aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAntoni Sawicki <tenox@google.com>2022-11-28 01:01:30 -0800
committerAntoni Sawicki <tenox@google.com>2022-11-28 01:01:30 -0800
commit7eca686b130a1c4f8f20166200a3c50e0da65e33 (patch)
treeb66187b482ba0822d8c11aea4e4bf4416a23e6c7
parentc83c43011b5ae48974dd64e3ddecd6070fe71ffa (diff)
downloadwfm-7eca686b130a1c4f8f20166200a3c50e0da65e33.tar.gz
aferoize iso reader
-rw-r--r--fileio.go2
-rw-r--r--formats.go5
2 files changed, 4 insertions, 3 deletions
diff --git a/fileio.go b/fileio.go
index f8ac590..c3a5c50 100644
--- a/fileio.go
+++ b/fileio.go
@@ -47,7 +47,7 @@ func (r *wfmRequest) dispFile() {
case "tar", "rar", "gz", "bz2", "xz", "tgz", "tbz2", "txz":
listArchive(r.w, fp)
case "iso":
- listIso(r.w, fp)
+ listIso(r.w, fp, r.fs)
default:
dispInline(r.w, fp, r.fs)
diff --git a/formats.go b/formats.go
index aa50c9e..900f247 100644
--- a/formats.go
+++ b/formats.go
@@ -89,14 +89,15 @@ func listZip(w http.ResponseWriter, fp string, wfs afero.Fs) {
}
// TODO(tenox): aferoize
-func listIso(w http.ResponseWriter, fp string) {
+func listIso(w http.ResponseWriter, fp string, wfs afero.Fs) {
// TODO: recursive file list
- f, err := os.Open(fp)
+ f, err := wfs.Open(fp)
if err != nil {
htErr(w, "isoread", err)
return
}
defer f.Close()
+ // TODO(tenox): add UDF support https://github.com/mogaika/udf
i, err := iso9660.OpenImage(f)
if err != nil {
htErr(w, "isoread", err)