Unix/Linux/POSIX typically allow almost any byte in a filename, but this flexibility is the source of many problems and vulnerabilities.

This problem is described in "Fixing Unix/Linux/POSIX Filenames: Control Characters (such as Newline), Leading Dashes, and Other Problems" (http://www.dwheeler.com/essays/fixing-unix-linux-filenames.html). Ways of writing shell programs to work around this are discussed in "Filenames and Pathnames in Shell: How to do it correctly" (http://www.dwheeler.com/essays/filenames-in-shell.html). One approach, which does not have some of the problems of other approaches, is to use encodef... which is this package.

Project Activity

See All Activity >

License

MIT License

Follow encodef

encodef Web Site

Other Useful Business Software
Enterprise-grade ITSM, for every business Icon
Enterprise-grade ITSM, for every business

Give your IT, operations, and business teams the ability to deliver exceptional services—without the complexity.

Freshservice is an intuitive, AI-powered platform that helps IT, operations, and business teams deliver exceptional service without the usual complexity. Automate repetitive tasks, resolve issues faster, and provide seamless support across the organization. From managing incidents and assets to driving smarter decisions, Freshservice makes it easy to stay efficient and scale with confidence.
Try it Free
Rate This Project
Login To Rate This Project

User Ratings

★★★★★
★★★★
★★★
★★
1
0
0
0
0
ease 1 of 5 2 of 5 3 of 5 4 of 5 5 of 5 0 / 5
features 1 of 5 2 of 5 3 of 5 4 of 5 5 of 5 5 / 5
design 1 of 5 2 of 5 3 of 5 4 of 5 5 of 5 5 / 5
support 1 of 5 2 of 5 3 of 5 4 of 5 5 of 5 0 / 5

User Reviews

  • dwheeler has a well reasoned, competently engineered, and thoroughly tested approach to proofing shell scripts against the vulnerabilities and unfortunate side effects that fundamentally flawed (but evolving) inbuilt methods of handling globing and pathnames enable. His brief essays on this subject are worth careful study and frequent review.
Read more reviews >

Additional Project Details

Registered

2013-11-05