Merge lp:~ubuntu-branches/ubuntu/quantal/nfs-utils/quantal-201209281842 into lp:ubuntu/quantal/nfs-utils

Proposed by Ubuntu Package Importer
Status: Rejected
Rejected by: James Westby
Proposed branch: lp:~ubuntu-branches/ubuntu/quantal/nfs-utils/quantal-201209281842
Merge into: lp:ubuntu/quantal/nfs-utils
Diff against target: 173 lines (+155/-0) (has conflicts)
3 files modified
debian/nfs-common.gssd-mounting.upstart (+57/-0)
debian/nfs-common.idmapd-mounting.upstart (+27/-0)
debian/patches/20-ticket-expired-error.patch (+71/-0)
Conflict adding file debian/nfs-common.gssd-mounting.upstart.  Moved existing file to debian/nfs-common.gssd-mounting.upstart.moved.
Conflict adding file debian/nfs-common.idmapd-mounting.upstart.  Moved existing file to debian/nfs-common.idmapd-mounting.upstart.moved.
Conflict adding file debian/patches/20-ticket-expired-error.patch.  Moved existing file to debian/patches/20-ticket-expired-error.patch.moved.
To merge this branch: bzr merge lp:~ubuntu-branches/ubuntu/quantal/nfs-utils/quantal-201209281842
Reviewer Review Type Date Requested Status
Ubuntu branches Pending
Review via email: mp+127046@code.launchpad.net

Description of the change

The package importer has detected a possible inconsistency between the package history in the archive and the history in bzr. As the archive is authoritative the importer has made lp:ubuntu/quantal/nfs-utils reflect what is in the archive and the old bzr branch has been pushed to lp:~ubuntu-branches/ubuntu/quantal/nfs-utils/quantal-201209281842. This merge proposal was created so that an Ubuntu developer can review the situations and perform a merge/upload if necessary. There are three typical cases where this can happen.
  1. Where someone pushes a change to bzr and someone else uploads the package without that change. This is the reason that this check is done by the importer. If this appears to be the case then a merge/upload should be done if the changes that were in bzr are still desirable.
  2. The importer incorrectly detected the above situation when someone made a change in bzr and then uploaded it.
  3. The importer incorrectly detected the above situation when someone just uploaded a package and didn't touch bzr.

If this case doesn't appear to be the first situation then set the status of the merge proposal to "Rejected" and help avoid the problem in future by filing a bug at https://bugs.launchpad.net/udd linking to this merge proposal.

(this is an automatically generated message)

To post a comment you must log in.

Unmerged revisions

70. By Stéphane Graber

releasing version 1:1.2.6-3ubuntu2

69. By Stéphane Graber

Apply patch for bug #794112

Preview Diff

[H/L] Next/Prev Comment, [J/K] Next/Prev File, [N/P] Next/Prev Hunk
1=== added file 'debian/nfs-common.gssd-mounting.upstart'
2--- debian/nfs-common.gssd-mounting.upstart 1970-01-01 00:00:00 +0000
3+++ debian/nfs-common.gssd-mounting.upstart 2012-09-28 18:51:21 +0000
4@@ -0,0 +1,57 @@
5+# gssd-mounting
6+
7+description "Block the mounting event for NFS4 filesytems until gssd is running"
8+author "Steve Langasek <steve.langasek@canonical.com>"
9+
10+instance $MOUNTPOINT
11+
12+start on mounting TYPE=nfs* OPTIONS=*sec*krb5*
13+stop on started gssd or stopped gssd
14+task
15+
16+# This is required so that the task is still considered
17+# successful when it gets killed
18+normal exit TERM
19+
20+script
21+
22+ DEFAULTFILE=/etc/default/nfs-common
23+
24+ if [ -f "$DEFAULTFILE" ]; then
25+ . "$DEFAULTFILE"
26+ fi
27+
28+ if [ -f /etc/fstab ]; then
29+ exec 9<&0 </etc/fstab
30+
31+ while read DEV MTPT FSTYPE OPTS REST
32+ do
33+ case "$OPTS" in
34+ sec=krb5|*,sec=krb5|sec=krb5,*|*,sec=krb5,*|sec=krb5i|*,sec=krb5i|sec=krb5i,*|*,sec=krb5i,*|sec=krb5p|*,sec=krb5p|sec=krb5p,*|*,sec=krb5p,*)
35+ AUTO_NEED_GSSD=yes
36+ ;;
37+ esac
38+ done
39+
40+ exec 0<&9 9<&-
41+ fi
42+
43+ case "$NEED_GSSD" in
44+ yes|no)
45+ ;;
46+ *)
47+ NEED_GSSD=$AUTO_NEED_GSSD
48+ ;;
49+ esac
50+ [ "x$NEED_GSSD" = xyes ] || { stop; exit 0; }
51+
52+ status gssd | grep -q "start/running" && exit 0
53+
54+ # If it's already starting we'll get killed by the impending 'stop on
55+ # started gssd'
56+ # If it wasn't already starting, we'll either get killed by the stop
57+ # on started or stopped.
58+ # So, its safe to sleep forever here and rely on upstart to kill us,
59+
60+ while sleep 3600; do :; done
61+end script
62
63=== renamed file 'debian/nfs-common.gssd-mounting.upstart' => 'debian/nfs-common.gssd-mounting.upstart.moved'
64=== added file 'debian/nfs-common.idmapd-mounting.upstart'
65--- debian/nfs-common.idmapd-mounting.upstart 1970-01-01 00:00:00 +0000
66+++ debian/nfs-common.idmapd-mounting.upstart 2012-09-28 18:51:21 +0000
67@@ -0,0 +1,27 @@
68+# idmapd-mounting
69+
70+description "Block the mounting event for NFS4 filesytems until idmapd is running"
71+author "Steve Langasek <steve.langasek@canonical.com>"
72+
73+instance $MOUNTPOINT
74+
75+start on mounting TYPE=nfs*
76+stop on started idmapd or stopped idmapd
77+task
78+
79+# This is required so that the task is still considered
80+# successful when it gets killed
81+normal exit TERM
82+
83+script
84+
85+ status idmapd | grep -q "start/running" && exit 0
86+
87+ # If it's already starting we'll get killed by the impending 'stop on
88+ # started idmapd'
89+ # If it wasn't already starting, we'll either get killed by the stop
90+ # on started or stopped.
91+ # So, its safe to sleep forever here and rely on upstart to kill us,
92+
93+ while sleep 3600; do :; done
94+end script
95
96=== renamed file 'debian/nfs-common.idmapd-mounting.upstart' => 'debian/nfs-common.idmapd-mounting.upstart.moved'
97=== added file 'debian/patches/20-ticket-expired-error.patch'
98--- debian/patches/20-ticket-expired-error.patch 1970-01-01 00:00:00 +0000
99+++ debian/patches/20-ticket-expired-error.patch 2012-09-28 18:51:21 +0000
100@@ -0,0 +1,71 @@
101+## Description: add some description
102+## Origin/Author: add some origin or author
103+## Bug: bug URL
104+--- a/utils/gssd/gssd.c
105++++ b/utils/gssd/gssd.c
106+@@ -63,6 +63,7 @@
107+ int root_uses_machine_creds = 1;
108+ unsigned int context_timeout = 0;
109+ char *preferred_realm = NULL;
110++int ticket_expiry_is_error = 0;
111+
112+ void
113+ sig_die(int signal)
114+@@ -85,7 +86,7 @@
115+ static void
116+ usage(char *progname)
117+ {
118+- fprintf(stderr, "usage: %s [-f] [-l] [-M] [-n] [-v] [-r] [-p pipefsdir] [-k keytab] [-d ccachedir] [-t timeout] [-R preferred realm]\n",
119++ fprintf(stderr, "usage: %s [-e] [-f] [-l] [-M] [-n] [-v] [-r] [-p pipefsdir] [-k keytab] [-d ccachedir] [-t timeout] [-R preferred realm]\n",
120+ progname);
121+ exit(1);
122+ }
123+@@ -102,8 +103,11 @@
124+ char *progname;
125+
126+ memset(ccachesearch, 0, sizeof(ccachesearch));
127+- while ((opt = getopt(argc, argv, "fvrlmnMp:k:d:t:R")) != -1) {
128++ while ((opt = getopt(argc, argv, "efvrlmnMp:k:d:t:R")) != -1) {
129+ switch (opt) {
130++ case 'e':
131++ ticket_expiry_is_error = 1;
132++ break;
133+ case 'f':
134+ fg = 1;
135+ break;
136+--- a/utils/gssd/gssd.h
137++++ b/utils/gssd/gssd.h
138+@@ -67,6 +67,7 @@
139+ extern int root_uses_machine_creds;
140+ extern unsigned int context_timeout;
141+ extern char *preferred_realm;
142++extern int ticket_expiry_is_error;
143+
144+ TAILQ_HEAD(clnt_list_head, clnt_info) clnt_list;
145+
146+--- a/utils/gssd/gssd.man
147++++ b/utils/gssd/gssd.man
148+@@ -130,6 +130,12 @@
149+ seconds, which allows changing Kerberos tickets and identities frequently.
150+ The default is no explicit timeout, which means the kernel context will live
151+ the lifetime of the Kerberos service ticket used in its creation.
152++.TP
153++.B -e
154++Return EACCESS instead of EKEYEXPIRED when a user's credentials expire.
155++Returning EKEYEXPIRED was introduced around kernel 2.6.34 and causes all nfs4
156++I/O to block when a user's credentials expire. This option reverts to old
157++bevavior.
158+ .SH SEE ALSO
159+ .BR rpc.svcgssd(8)
160+ .SH AUTHORS
161+--- a/utils/gssd/gssd_proc.c
162++++ b/utils/gssd/gssd_proc.c
163+@@ -1008,7 +1008,7 @@
164+ free(userdir);
165+ userdir = NULL;
166+ }
167+- if (err == -EKEYEXPIRED)
168++ if (err == -EKEYEXPIRED && !ticket_expiry_is_error)
169+ downcall_err = -EKEYEXPIRED;
170+ else if (!err)
171+ create_resp = create_auth_rpc_client(clp, &rpc_clnt, &auth, uid,
172
173=== renamed file 'debian/patches/20-ticket-expired-error.patch' => 'debian/patches/20-ticket-expired-error.patch.moved'

Subscribers

People subscribed via source and target branches

to all changes: