/[smecontribs]/rpms/smeserver-shared-folders/contribs7/smeserver-shared-folders-0.1-make_encfs_optional.patch
ViewVC logotype

Annotation of /rpms/smeserver-shared-folders/contribs7/smeserver-shared-folders-0.1-make_encfs_optional.patch

Parent Directory Parent Directory | Revision Log Revision Log | View Revision Graph Revision Graph


Revision 1.1 - (hide annotations) (download)
Tue Jul 5 16:28:25 2011 UTC (13 years, 4 months ago) by vip-ire
Branch: MAIN
CVS Tags: smeserver-shared-folders-0_1-71_el4_sme, smeserver-shared-folders-0_1-61_el4_sme, smeserver-shared-folders-0_1-70_el4_sme, smeserver-shared-folders-0_1-66_el4_sme, smeserver-shared-folders-0_1-65_el4_sme, smeserver-shared-folders-0_1-51_el4_sme, smeserver-shared-folders-0_1-50_el4_sme, smeserver-shared-folders-0_1-59_el4_sme, smeserver-shared-folders-0_1-56_el4_sme, smeserver-shared-folders-0_1-60_el4_sme, smeserver-shared-folders-0_1-77_el4_sme, smeserver-shared-folders-0_1-74_el4_sme, smeserver-shared-folders-0_1-78_el4_sme, smeserver-shared-folders-0_1-62_el4_sme, smeserver-shared-folders-0_1-58_el4_sme, smeserver-shared-folders-0_1-63_el4_sme, smeserver-shared-folders-0_1-75_el4_sme, smeserver-shared-folders-0_1-76_el4_sme, smeserver-shared-folders-0_1-68_el4_sme, smeserver-shared-folders-0_1-69_el4_sme, smeserver-shared-folders-0_1-57_el4_sme, smeserver-shared-folders-0_1-54_el4_sme, smeserver-shared-folders-0_1-49_el4_sme, smeserver-shared-folders-0_1-52_el4_sme, smeserver-shared-folders-0_1-72_el4_sme, smeserver-shared-folders-0_1-73_el4_sme, smeserver-shared-folders-0_1-64_el4_sme, smeserver-shared-folders-0_1-67_el4_sme, smeserver-shared-folders-0_1-79_el4_sme, smeserver-shared-folders-0_1-55_el4_sme, smeserver-shared-folders-0_1-53_el4_sme, HEAD
* Tue Jul 05 2011 Daniel Berteaud <daniel@firewall-services.com> 0.1-49.sme
- Make encryption support optional
- Sanitize password field in userpanelEncfs
- Prevent deletion of mounted, encrypted shares

1 vip-ire 1.1 diff -Nur smeserver-shared-folders-0.1/root/etc/e-smith/locale/en-us/etc/e-smith/web/functions/shares smeserver-shared-folders-0.1_mod/root/etc/e-smith/locale/en-us/etc/e-smith/web/functions/shares
2     --- smeserver-shared-folders-0.1/root/etc/e-smith/locale/en-us/etc/e-smith/web/functions/shares 2011-07-05 13:58:01.000000000 +0200
3     +++ smeserver-shared-folders-0.1_mod/root/etc/e-smith/locale/en-us/etc/e-smith/web/functions/shares 2011-07-05 16:08:28.000000000 +0200
4     @@ -469,6 +469,13 @@
5     </entry>
6    
7     <entry>
8     + <base>ERROR_ENCRYPTED_ENABLED</base>
9     + <trans>
10     + This shared folder is encrypted and access is enabled. You have to put it in protected mode before removing it
11     + </trans>
12     + </entry>
13     +
14     + <entry>
15     <base>INVALID_INACTIVITY</base>
16     <trans>
17     Inactivity value must be numbers only
18     diff -Nur smeserver-shared-folders-0.1/root/etc/e-smith/web/functions/shares smeserver-shared-folders-0.1_mod/root/etc/e-smith/web/functions/shares
19     --- smeserver-shared-folders-0.1/root/etc/e-smith/web/functions/shares 2011-07-05 13:58:01.000000000 +0200
20     +++ smeserver-shared-folders-0.1_mod/root/etc/e-smith/web/functions/shares 2011-07-05 13:59:19.000000000 +0200
21     @@ -119,14 +119,7 @@
22    
23     <subroutine src="print_ajaxplorer_fields()" />
24    
25     - <subroutine src="print_section_bar()" />
26     -
27     <subroutine src="print_encryption_fields()" />
28     - <field type="text" id="inactivity" validation="validate_inactivity">
29     - <description>DESC_INACTIVITY</description>
30     - <label>INACTIVITY</label>
31     - </field>
32     -
33    
34     <subroutine src="print_save_or_add_button()" />
35     </page>
36     diff -Nur smeserver-shared-folders-0.1/root/usr/lib/perl5/site_perl/esmith/FormMagick/Panel/shares.pm smeserver-shared-folders-0.1_mod/root/usr/lib/perl5/site_perl/esmith/FormMagick/Panel/shares.pm
37     --- smeserver-shared-folders-0.1/root/usr/lib/perl5/site_perl/esmith/FormMagick/Panel/shares.pm 2011-07-05 13:58:01.000000000 +0200
38     +++ smeserver-shared-folders-0.1_mod/root/usr/lib/perl5/site_perl/esmith/FormMagick/Panel/shares.pm 2011-07-05 16:26:51.000000000 +0200
39     @@ -250,19 +250,31 @@
40    
41     }
42    
43     -
44     +# If EncFS is available, print encryptions options
45     sub print_encryption_fields {
46     my $self = shift;
47     +
48     + return undef unless(system('rpm -q fuse-encfs 2>&1 > /dev/null') == 0);
49     +
50     my $encryption = $self->{cgi}->param('encryption') || 'disabled';
51     my $action = $self->{cgi}->param('action') || '';
52    
53     + my $sharename = $self->{cgi}->param('name') || '';
54     +
55     + return undef if ($action eq 'modify' && $encryption ne 'enabled');
56     +
57     + my $inactivity = (($sharename ne '') && ($accountdb->get($sharename))) ?
58     + ($accountdb->get($sharename)->prop('Inactivity') || '30'):'30';
59     +
60     + print_section_bar();
61     +
62     print qq(<tr><td colspan="2">) . $self->localise('DESC_ENCRYPTION') . qq(</td></tr>);
63     print qq(<tr><td class="sme-noborders-label">) .
64     $self->localise('LABEL_ENCRYPTION') . qq(</td>\n);
65    
66     if ($action eq 'modify') {
67     print qq(
68     - <td class="sme-noborders-content">$encryption
69     + <td class="sme-noborders-content">) . $self->localise(uc($encryption)) . qq(
70     <input type="hidden" name="encryption" value="$encryption">
71     </td>
72     );
73     @@ -289,6 +301,14 @@
74     );
75     }
76    
77     + print qq(<tr><td colspan="2">) . $self->localise('DESC_INACTIVITY') . qq(</td></tr>);
78     + print qq(<tr><td class="sme-noborders-label">) .
79     + $self->localise('INACTIVITY') . qq(</td>\n);
80     + print qq(
81     + <td><input type="text" name="inactivity" value="$inactivity">
82     + </td>
83     + );
84     +
85     print qq(</tr>\n);
86    
87     return undef;
88     @@ -667,10 +687,18 @@
89     unless ($self->cgi->param('cancel')){
90     if (my $acct = $accountdb->get($name)) {
91     if ($acct->prop('type') eq 'share') {
92     - $acct->set_prop('type', 'share-deleted');
93     -
94     # Untaint $name before use in system()
95     $name =~ /(.+)/; $name = $1;
96     + my $encryption = $acct->prop('Encryption') || 'disabled';
97     + my $mountstatus = `/bin/mount | grep /home/e-smith/files/shares/$name/ | grep -c fuse`;
98     + chomp($mountstatus);
99     + if (($encryption eq 'enabled') && ($mountstatus eq '1')){
100     + $self->error("ERROR_ENCRYPTED_ENABLED");
101     + return undef;
102     + }
103     +
104     + $acct->set_prop('type', 'share-deleted');
105     +
106     if (system ("/sbin/e-smith/signal-event", "share-delete", $name) == 0) {
107     $self->success("SUCCESSFULLY_DELETED_SHARE");
108     $acct->delete();
109     @@ -734,7 +762,8 @@
110    
111     return 'OK' if ($self->{cgi}->param('encryption') eq 'disabled');
112    
113     - unless (scalar (split("",$pass1)) >= 8){
114     + my @num = split(//,$pass1);
115     + unless (scalar (@num) >= 8){
116     return $self->localise('PASSWORD_TOO_SHORT');
117     }
118    
119     diff -Nur smeserver-shared-folders-0.1/root/usr/lib/perl5/site_perl/esmith/FormMagick/Panel/userpanelEncfs.pm smeserver-shared-folders-0.1_mod/root/usr/lib/perl5/site_perl/esmith/FormMagick/Panel/userpanelEncfs.pm
120     --- smeserver-shared-folders-0.1/root/usr/lib/perl5/site_perl/esmith/FormMagick/Panel/userpanelEncfs.pm 2011-07-05 13:58:01.000000000 +0200
121     +++ smeserver-shared-folders-0.1_mod/root/usr/lib/perl5/site_perl/esmith/FormMagick/Panel/userpanelEncfs.pm 2011-07-05 16:27:07.000000000 +0200
122     @@ -83,7 +83,7 @@
123     my $sharename = $i->key();
124     my $sharedesc = $i->prop('Name');
125    
126     - my $mountstatus = `/bin/mount | /bin/grep /home/e-smith/files/shares/$sharename | grep -c fuse`;
127     + my $mountstatus = `/bin/mount | /bin/grep /home/e-smith/files/shares/$sharename/ | grep -c fuse`;
128     chomp($mountstatus);
129     my $sharestatus = ($mountstatus eq '1') ? $self->localise('MOUNTED') : $self->localise('NOT_MOUNTED');
130    
131     @@ -117,8 +117,11 @@
132     my $rec = $accountdb->get($share);
133     my $timeout = $rec->prop('InactivityTimeOut') || '30';
134     $timeout = '30' unless ($timeout =~ m/\d+/);
135     + my $recycle = $rec->prop('RecycleBin') || 'disabled';
136     + my $recycledir = $rec->prop('RecycleBinDir') || 'Recycle Bin';
137     my $source = "/home/e-smith/files/shares/$share/.store";
138     my $dest = "/home/e-smith/files/shares/$share/files";
139     + $pass =~ s/([;<>\*\|`&\$!#\(\)\[\]\{\}:'"])/\\$1/g;
140     $pass = $1 if ( $pass =~ /(.*)/ );
141    
142     unless ( system("echo $pass | /usr/bin/encfs -i $timeout -S --public -o nonempty,umask=000 $source $dest > /dev/null 2>&1") == 0){
143     @@ -126,6 +129,12 @@
144     return undef;
145     }
146    
147     + if ( !-e $dest . '/' . $recycledir && $recycle eq 'enabled'){
148     + unless(mkdir $dest . '/' . $recycledir){
149     + $fm->error('ERROR_MOUNTING');
150     + }
151     + }
152     +
153     $fm->success('SUCCESS');
154     }
155    

admin@koozali.org
ViewVC Help
Powered by ViewVC 1.2.1 RSS 2.0 feed