Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

cd9660: Add support for mask,dirmask,uid,gid options #23

Closed

Conversation

ricardobranco777
Copy link
Contributor

@ricardobranco777 ricardobranco777 commented Mar 8, 2024

This patch adds arbitrary mask, dirmask, uid & gid support to ISO9660 ala MSDOSFS.

Similar patches accepted in FreeBSD & NetBSD

How I tested it:

Compile a custom kernel with no options CD9660 line.

cd /usr/src/sys/vfs/isofs/cd9660
sudo cp cd9660_mount.h /usr/include/vfs/isofs/cd9660/cd9660_mount.h
make
sudo make install
cd /usr/src/sbin/mount_cd9660
make
sudo make install
sudo vnconfig -c -v /dev/vn0 /path/to/iso.iso
sudo mount_cd9660 -m640 -M750 -Uricardo -G777 /dev/vn0 /mnt
ls -l /mnt
sudo umount /mnt
sudo vnconfig -u vn0

NOTE: The a_gid, a_uid & a_mask functions were taken almost verbatim from mount_msdos.c. The only change being using const char * for the argument.

@liweitianux
Copy link
Member

Thank you for the patches. I'll handle them when I find the time a bit later.

iteratee pushed a commit to iteratee/DragonFlyBSD that referenced this pull request Mar 13, 2024
While DragonFly has already imported FreeBSD gtaskqueue API, I
personally think its implementation is unnecessarily complex, so I
decided to replace it with the simpler taskqueue(9) API.

I emulate the gtaskqueue_drain() API by randomly choosing one taskqueue
among all CPUs for the task to distribute the work load.  The randomly
chosen taskqueues are kept in the struct along with the task, so new
struct fields are added accordingly.
@liweitianux
Copy link
Member

Merged to master. Thank you.

dragonflybot pushed a commit that referenced this pull request Mar 23, 2024
The updates to mount_cd9660(8) are basically taken from mount_msdos(8).

GitHub PR: #23
See also:
- freebsd/freebsd-src#982
- NetBSD/src#29
@ricardobranco777 ricardobranco777 deleted the cd9660_uidmask branch March 23, 2024 12:45
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
2 participants