summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRobin H. Johnson <robbat2@gentoo.org>2015-08-08 13:49:04 -0700
committerRobin H. Johnson <robbat2@gentoo.org>2015-08-08 17:38:18 -0700
commit56bd759df1d0c750a065b8c845e93d5dfa6b549d (patch)
tree3f91093cdb475e565ae857f1c5a7fd339e2d781e /sys-fs/lufis/files
downloadgentoo-56bd759df1d0c750a065b8c845e93d5dfa6b549d.tar.gz
gentoo-56bd759df1d0c750a065b8c845e93d5dfa6b549d.tar.bz2
gentoo-56bd759df1d0c750a065b8c845e93d5dfa6b549d.zip
proj/gentoo: Initial commit
This commit represents a new era for Gentoo: Storing the gentoo-x86 tree in Git, as converted from CVS. This commit is the start of the NEW history. Any historical data is intended to be grafted onto this point. Creation process: 1. Take final CVS checkout snapshot 2. Remove ALL ChangeLog* files 3. Transform all Manifests to thin 4. Remove empty Manifests 5. Convert all stale $Header$/$Id$ CVS keywords to non-expanded Git $Id$ 5.1. Do not touch files with -kb/-ko keyword flags. Signed-off-by: Robin H. Johnson <robbat2@gentoo.org> X-Thanks: Alec Warner <antarus@gentoo.org> - did the GSoC 2006 migration tests X-Thanks: Robin H. Johnson <robbat2@gentoo.org> - infra guy, herding this project X-Thanks: Nguyen Thai Ngoc Duy <pclouds@gentoo.org> - Former Gentoo developer, wrote Git features for the migration X-Thanks: Brian Harring <ferringb@gentoo.org> - wrote much python to improve cvs2svn X-Thanks: Rich Freeman <rich0@gentoo.org> - validation scripts X-Thanks: Patrick Lauer <patrick@gentoo.org> - Gentoo dev, running new 2014 work in migration X-Thanks: Michał Górny <mgorny@gentoo.org> - scripts, QA, nagging X-Thanks: All of other Gentoo developers - many ideas and lots of paint on the bikeshed
Diffstat (limited to 'sys-fs/lufis/files')
-rw-r--r--sys-fs/lufis/files/lufis-0.2-lufs.patch250
-rw-r--r--sys-fs/lufis/files/lufis-allow-uid-and-gid-addon.patch29
2 files changed, 279 insertions, 0 deletions
diff --git a/sys-fs/lufis/files/lufis-0.2-lufs.patch b/sys-fs/lufis/files/lufis-0.2-lufs.patch
new file mode 100644
index 000000000000..00edacb55be2
--- /dev/null
+++ b/sys-fs/lufis/files/lufis-0.2-lufs.patch
@@ -0,0 +1,250 @@
+This patch makes it possible to compile lufis without the lufs package.
+It has been merged to the lufis cvs tree.
+We would like to remove lufs soon in favour of the newer system fuse.
+
+diff -Naur lufis-0.2.orig/lufs/fs.h lufis-0.2/lufs/fs.h
+--- lufis-0.2.orig/lufs/fs.h 1970-01-01 01:00:00.000000000 +0100
++++ lufis-0.2/lufs/fs.h 2004-11-12 21:07:45.714978800 +0100
+@@ -0,0 +1,112 @@
++/*
++ * lufs.h
++ * Copyright (C) 2002 Florin Malita <mali@go.ro>
++ *
++ * This file is part of LUFS, a free userspace filesystem implementation.
++ * See http://lufs.sourceforge.net/ for updates.
++ *
++ * LUFS is free software; you can redistribute it and/or modify
++ * it under the terms of the GNU General Public License as published by
++ * the Free Software Foundation; either version 2 of the License, or
++ * (at your option) any later version.
++ *
++ * LUFS is distributed in the hope that it will be useful,
++ * but WITHOUT ANY WARRANTY; without even the implied warranty of
++ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
++ * GNU General Public License for more details.
++ *
++ * You should have received a copy of the GNU General Public License
++ * along with this program; if not, write to the Free Software
++ * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
++ */
++
++#ifndef _LUFS_FS_H_
++#define _LUFS_FS_H_
++
++#include <sys/types.h>
++
++#ifdef __cplusplus
++extern "C" {
++#endif
++
++struct dir_cache;
++struct directory;
++struct lufs_fattr;
++struct file_system;
++struct list_head;
++struct dir_cache;
++
++#define MAX_LEN 64
++
++struct credentials{
++ char user[MAX_LEN];
++ char group[MAX_LEN];
++ uid_t uid;
++ gid_t gid;
++};
++
++
++struct directory* lu_cache_mkdir(char*);
++int lu_cache_add2dir(struct directory*, char*, char*, struct lufs_fattr*);
++int lu_cache_lookup(struct dir_cache*, char*, char*, struct lufs_fattr*, char*, int);
++void lu_cache_add_dir(struct dir_cache*, struct directory*);
++void lu_cache_killdir(struct directory*);
++
++int lu_check_to(int, int, int);
++int lu_atomic_read(int, char*, int, int);
++int lu_atomic_write(int, char*, int, int);
++
++int lu_opt_loadcfg(struct list_head*, char*);
++int lu_opt_parse(struct list_head*, char*, char*);
++int lu_opt_getint(struct list_head*, char*, char*, long int*, int);
++const char* lu_opt_getchar(struct list_head*, char*, char*);
++
++
++#ifdef __cplusplus
++} /* end of extern "C" { */
++#endif
++
++#ifdef TRACE
++#undef TRACE
++#endif
++#ifdef WARN
++#undef WARN
++#endif
++#ifdef ERROR
++#undef ERROR
++#endif
++
++#ifdef __cplusplus
++
++#include <iostream>
++
++#ifdef DEBUG
++#define TRACE(x) cout<<std::hex<<"["<<getpid()<<"]("<<__func__<<")"<<x<<"\n"
++#define WARN(x) cerr<<std::hex<<"["<<getpid()<<"]("<<__func__<<")"<<x<<"\n"
++#define ERROR(x) cerr<<std::hex<<"["<<getpid()<<"]("<<__func__<<")"<<x<<"\n"
++#else
++#define TRACE(x...) do{}while(0)
++#define WARN(x...) do{}while(0)
++#define ERROR(x...) cerr<<x<<"\n"
++#endif
++
++#else
++
++#include <stdio.h>
++
++#ifdef DEBUG
++#define TRACE(x...) do{fprintf(stderr, "[%x](%s) ", getpid(), __func__); fprintf(stderr, x); fprintf(stderr, "\n");}while(0)
++#define WARN(x...) do{fprintf(stderr, "[%x](%s) ", getpid(), __func__); fprintf(stderr, x); fprintf(stderr, "\n");}while(0)
++#define ERROR(x...) do{fprintf(stderr, "[%x](%s) ", getpid(), __func__); fprintf(stderr, x); fprintf(stderr, "\n");}while(0)
++#else
++#define TRACE(x...) do{}while(0)
++#define WARN(x...) do{}while(0)
++#define ERROR(x...) do{fprintf(stderr, x); fprintf(stderr, "\n");}while(0)
++#endif
++
++#endif
++
++
++
++#endif
++
+diff -Naur lufis-0.2.orig/lufs/proto.h lufis-0.2/lufs/proto.h
+--- lufis-0.2.orig/lufs/proto.h 1970-01-01 01:00:00.000000000 +0100
++++ lufis-0.2/lufs/proto.h 2004-11-12 21:07:45.715978648 +0100
+@@ -0,0 +1,116 @@
++/*
++ * proto.h
++ * Copyright (C) 2002 Florin Malita <mali@go.ro>
++ *
++ * This file is part of LUFS, a free userspace filesystem implementation.
++ * See http://lufs.sourceforge.net/ for updates.
++ *
++ * LUFS is free software; you can redistribute it and/or modify
++ * it under the terms of the GNU General Public License as published by
++ * the Free Software Foundation; either version 2 of the License, or
++ * (at your option) any later version.
++ *
++ * LUFS is distributed in the hope that it will be useful,
++ * but WITHOUT ANY WARRANTY; without even the implied warranty of
++ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
++ * GNU General Public License for more details.
++ *
++ * You should have received a copy of the GNU General Public License
++ * along with this program; if not, write to the Free Software
++ * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
++ */
++
++#ifndef _LU_PROTO_H_
++#define _LU_PROTO_H_
++
++#define LU_MAXDATA 4096
++
++#define PVERSION 0x02
++
++#define PTYPE_OK 0x00
++#define PTYPE_MOUNT 0x01
++#define PTYPE_READ 0x02
++#define PTYPE_WRITE 0x03
++#define PTYPE_READDIR 0x04
++#define PTYPE_STAT 0x05
++#define PTYPE_UMOUNT 0x06
++#define PTYPE_SETATTR 0x07
++#define PTYPE_MKDIR 0x08
++#define PTYPE_RMDIR 0x09
++#define PTYPE_CREATE 0x0A
++#define PTYPE_UNLINK 0x0B
++#define PTYPE_RENAME 0x0C
++#define PTYPE_OPEN 0x0D
++#define PTYPE_RELEASE 0x0E
++#define PTYPE_READLINK 0x0F
++#define PTYPE_LINK 0x10
++#define PTYPE_SYMLINK 0x11
++#define PTYPE_STATFS 0x12
++
++#define PTYPE_MAX 0x12
++
++
++#define PTYPE_ERROR 0x100
++
++#define PERROR(x) (-(x & (PTYPE_ERROR - 1)) - 1)
++#define PIS_ERROR(x) (x & PTYPE_ERROR)
++
++struct lu_msg {
++ unsigned short msg_version;
++ unsigned short msg_type;
++ unsigned short msg_datalen;
++ unsigned short msg_pid;
++};
++
++
++struct lufs_fattr{
++ unsigned long f_ino;
++ unsigned long f_mode;
++ unsigned long f_nlink;
++ unsigned long f_uid;
++ unsigned long f_gid;
++ long long f_size;
++ unsigned long f_atime;
++ unsigned long f_mtime;
++ unsigned long f_ctime;
++ unsigned long f_blksize;
++ unsigned long f_blocks;
++};
++
++
++struct lufs_sbattr{ /* struct statfs64 */
++ unsigned long long sb_bytes;
++ unsigned long long sb_bytes_free;
++ unsigned long long sb_bytes_available;
++ unsigned long long sb_files;
++ unsigned long long sb_ffree;
++};
++
++
++struct lufs_req_readdir{
++ unsigned short offset;
++ char dirname[0];
++};
++
++struct lufs_req_mkdir{
++ int mode;
++ char dirname[0];
++};
++
++struct lufs_req_rw{
++ long long offset;
++ unsigned long count;
++ char name[0];
++};
++
++struct lufs_req_open{
++ unsigned mode;
++ char name[0];
++};
++
++struct lufs_req_setattr{
++ struct lufs_fattr fattr;
++ char name[0];
++};
++
++#endif
+diff -Naur lufis-0.2.orig/Makefile lufis-0.2/Makefile
+--- lufis-0.2.orig/Makefile 2004-11-12 21:07:36.138434656 +0100
++++ lufis-0.2/Makefile 2004-11-12 21:10:04.342904152 +0100
+@@ -1,5 +1,5 @@
+ CC = gcc
+-CFLAGS = -Wall -W -g
++CFLAGS += -Wall -W -g -I.
+ LDLIBS = -lfuse -lpthread -ldl -rdynamic
+ CPPFLAGS := -D_FILE_OFFSET_BITS=64
+ #CPPFLAGS += -DDEBUG
diff --git a/sys-fs/lufis/files/lufis-allow-uid-and-gid-addon.patch b/sys-fs/lufis/files/lufis-allow-uid-and-gid-addon.patch
new file mode 100644
index 000000000000..006559762b85
--- /dev/null
+++ b/sys-fs/lufis/files/lufis-allow-uid-and-gid-addon.patch
@@ -0,0 +1,29 @@
+--- lufis-0.3.orig/lufis.c 2005-02-05 18:59:56.000000000 +0100
++++ lufis-0.3/lufis.c 2005-02-05 19:00:38.000000000 +0100
+@@ -276,15 +276,21 @@ static int lu_getattr(const char *path,
+ if(res < 0)
+ return res;
+
+- /* Take uid= and gid= vars when the filesystem returns 1 */
++ // Take uid= and gid= vars when the filesystem returns 1
+ if(fattr.f_uid == (uid_t) 1) {
+- lu_opt_getint(&lu_cfg, "MOUNT", "uid", &option_uid, 0);
+- fattr.f_uid = (uid_t) option_uid;
++ if(!lu_opt_getint(&lu_cfg, "MOUNT", "uid", &option_uid, 0))
++ fattr.f_uid = (uid_t) option_uid;
++ else
++ // default to 0 (root) when no argument was supplied
++ fattr.f_uid = (uid_t) 0;
+ }
+
+ if(fattr.f_gid == (gid_t) 1) {
+- lu_opt_getint(&lu_cfg, "MOUNT", "gid", &option_gid, 0);
+- fattr.f_gid = (gid_t) option_gid;
++ if(!lu_opt_getint(&lu_cfg, "MOUNT", "gid", &option_gid, 0))
++ fattr.f_gid = (gid_t) option_gid;
++ else
++ // default to 0 (root) when no argument was supplied
++ fattr.f_gid = (gid_t) 0;
+ }
+
+ stbuf->st_mode = fattr.f_mode;