diff --git a/readme.md b/readme.md index 0ce8130..285f4ea 100644 --- a/readme.md +++ b/readme.md @@ -6,3 +6,18 @@ https://sxyprn.com/post/6814cdff5011a.html #curl -X POST localhost:3000 -H "Content-Type: text/plain" --data 'https://sxyprn.com/post/653e2c6329e1c.html' #["MomPov E233 Malinda - 49 Year Old Horny Divorced Blonde MILF Beauty https://streamvid.net/ozfe24wrw95h #milf #casting #pov #anal - [01:08:17] (29.10.2023) on SexyPorn","https://sxyprn.com/cdn8/c9/22t1338zl607azp5q71zd1s4p6a/DjtVYfJJupZm-lC44cUtgw/1698771257/k615f1vfaardx6lcs07bsab3g6c/x86v5436eb27ck6836209zek16c.vid"] + +Change log +#!/bin/bash → robust start: #!/usr/bin/env bash, set -Eeuo pipefail, säkert IFS. +**Bug**: idx användes innan base_url fanns (t.ex. i -p/-f-lägen) → nu sätts IDX dynamiskt via URL/host (även för relativa länkar). +**Mutual exclusivity**: Din getopts-sträng tvingade argument på -n/-d och kontrollerade OPTARG mot flaggor (funkar inte). Nu: -n/-d är flaggor utan argument och vi räknar att exakt en av -c|-p|-f används. +**Låset**: Fildeskriptor-baserat flock behålls men paketeras med trap på EXIT/INT/TERM så lås alltid släpps. +**Indexering**: Skapande av katalog/fil för idx görs först när kontexten är känd; en hjälpfunktion plockar host från URL och bygger path. Append sker via separat helper. +**Curl-hygien**: Tidsgränser, retries, --fail-with-body, komprimering och tydlig User-Agent. Downloads sker till .part och flyttas på succé. Dry-run stöds (-n). +**HTML-extraktion**: Din sed|grep|awk-pipeline kvarstår (men noteras som skör). Tips: byt till pup/htmlq om möjligt. +**Sanering av filnamn**: robust sanitize_filename() med truncation (80 tecken) och whitelisting av tecken. +**Resolver**: POST mot localhost:3000 isolerad i resolve_item_link(); regex för ["name","url"] validerar svaret. +**Utskriftskatalog**: Styrs via OUTDIR env var. Skapar mapp vid behov. +**Konfig**: PAGES, SLEEP_BETWEEN_PAGES, LOCAL_RESOLVER_URL via env-variabler. +**Meddelanden/logg**: Konsistent log() med tidsstämpel. +**Felhantering**: die() med tydliga fel och konsekventa exits. \ No newline at end of file