Hello community,
here is the log from the commit of package pam_cifs
checked in at Tue Apr 17 00:39:59 CEST 2007.
--------
--- pam_cifs/pam_cifs.changes 2006-10-29 11:39:08.000000000 +0100
+++ /mounts/work_src_done/STABLE/pam_cifs/pam_cifs.changes 2007-04-16 14:14:07.474415000 +0200
@@ -1,0 +2,6 @@
+Mon Apr 16 14:09:07 CEST 2007 - mc@suse.de
+
+- update to version 0.45
+- remove obsolete patch
+
+-------------------------------------------------------------------
Old:
----
pam_cifs-0.43.tar.bz2
pam_cifs-strncat.patch
New:
----
pam_cifs-0.45.tar.bz2
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ pam_cifs.spec ++++++
--- /var/tmp/diff_new_pack.B10391/_old 2007-04-17 00:39:07.000000000 +0200
+++ /var/tmp/diff_new_pack.B10391/_new 2007-04-17 00:39:07.000000000 +0200
@@ -1,7 +1,7 @@
#
-# spec file for package pam_cifs (Version 0.43)
+# spec file for package pam_cifs (Version 0.45)
#
-# Copyright (c) 2006 SUSE LINUX Products GmbH, Nuernberg, Germany.
+# Copyright (c) 2007 SUSE LINUX Products GmbH, Nuernberg, Germany.
# This file and all modifications and additions to the pristine
# package are under the same license as the package itself.
#
@@ -12,16 +12,15 @@
Name: pam_cifs
BuildRequires: pam-devel
-License: GNU General Public License (GPL) - all versions
+License: GNU General Public License (GPL)
Group: Productivity/Security
Autoreqprov: on
-Version: 0.43
-Release: 14
+Version: 0.45
+Release: 1
Summary: PAM module for mount/umount CIFS shares
URL: http://sourceforge.net/projects/pam-cifs
Source: pam_cifs-%{version}.tar.bz2
Patch0: pam_cifs-0.43-cflags.patch
-Patch1: pam_cifs-strncat.patch
BuildRoot: %{_tmppath}/%{name}-%{version}-build
Requires: pam
@@ -40,7 +39,6 @@
%prep
%setup -q -n pam-cifs
%patch0
-%patch1
%build
make OPTFLAGS="$RPM_OPT_FLAGS"
@@ -61,7 +59,10 @@
%attr(555,root,root) /%{_lib}/security/pam_cifs.so
%attr(555,root,root)/%{_sbindir}/cifsumountd
-%changelog -n pam_cifs
+%changelog
+* Mon Apr 16 2007 - mc@suse.de
+- update to version 0.45
+- remove obsolete patch
* Sun Oct 29 2006 - meissner@suse.de
- use RPM_OPT_FLAGS
- fixed bad uses of strncat().
++++++ pam_cifs-0.43.tar.bz2 -> pam_cifs-0.45.tar.bz2 ++++++
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/pam-cifs/do_mount.c new/pam-cifs/do_mount.c
--- old/pam-cifs/do_mount.c 2006-08-01 16:53:09.000000000 +0200
+++ new/pam-cifs/do_mount.c 2007-02-26 12:02:36.000000000 +0100
@@ -23,7 +23,7 @@
#include
int
-do_mount(char *source, char *target, char *options, const char *authtok,
+do_mount(char *source, char *target, char *domain, char *options, const char *authtok,
uid_t uid, gid_t gid, const char *user, int background) {
slog("do_mount: %s should be mounted on %s", source, target);
@@ -35,15 +35,29 @@
argv[3] = "-o";
argv[4] = (char *) malloc(LINE_MAX);
if (strncmp(options, "", NAME_MAX) == 0) {
- snprintf(argv[4], LINE_MAX, "user=%s,uid=%d,gid=%d,dir_mode=0700,file_mode=0600",
- user, uid, gid);
+ if (strncmp(domain, "", NAME_MAX) == 0) {
+ snprintf(argv[4], LINE_MAX, "user=%s,uid=%d,gid=%d,dir_mode=0700,file_mode=0600",
+ user, uid, gid);
+ }
+ else {
+ snprintf(argv[4], LINE_MAX, "user=%s,uid=%d,gid=%d,dir_mode=0700,file_mode=0600,domain=%s",
+ user, uid, gid, domain);
+ }
}
else {
- snprintf(argv[4], LINE_MAX, "%s,user=%s,uid=%d,gid=%d,dir_mode=0700,file_mode=0600",
- options, user, uid, gid);
+ if (strncmp(domain, "", NAME_MAX) == 0) {
+ snprintf(argv[4], LINE_MAX, "%s,user=%s,uid=%d,gid=%d,dir_mode=0700,file_mode=0600",
+ options, user, uid, gid);
+ }
+ else {
+ snprintf(argv[4], LINE_MAX, "%s,user=%s,uid=%d,gid=%d,dir_mode=0700,file_mode=0600,domain=%s",
+ options, user, uid, gid, domain);
+ }
}
argv[5] = NULL;
-
+
+ slog("do_mount: mountoptions: %s", argv[4]);
+
char ret[LINE_MAX];
char input[LINE_MAX];
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/pam-cifs/mkdirpath.c new/pam-cifs/mkdirpath.c
--- old/pam-cifs/mkdirpath.c 2005-08-29 13:39:25.000000000 +0200
+++ new/pam-cifs/mkdirpath.c 2006-10-30 09:41:16.000000000 +0100
@@ -57,8 +57,8 @@
while((component = strtok_r(npath, "/", &npath2)) != NULL) {
npath = NULL;
- strncat(newdir, "/", PATH_MAX);
- strncat(newdir, component, PATH_MAX);
+ strncat(newdir, "/", sizeof(newdir)-strlen(newdir)-1);
+ strncat(newdir, component, sizeof(newdir)-strlen(newdir)-1);
if (stat(newdir, &statbuf) < 0) {
if (errno == ENOENT) {
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/pam-cifs/pam_cifs.h new/pam-cifs/pam_cifs.h
--- old/pam-cifs/pam_cifs.h 2006-08-01 16:58:51.000000000 +0200
+++ new/pam-cifs/pam_cifs.h 2007-02-26 12:04:49.000000000 +0100
@@ -48,7 +48,7 @@
#define DEFAULT_DOMAIN "undefined"
#endif
#ifndef DEFAULT_OPTIONS
-#define DEFAULT_OPTIONS "undefined"
+#define DEFAULT_OPTIONS ""
#endif
#ifndef DEFAULT_MIN_UID
#define DEFAULT_MIN_UID 1000
@@ -125,7 +125,7 @@
int pexec(const char *cmdpath, char *argv[], int background, char *input, char *output, size_t noutput);
void parse_options(int argc, const char **argv);
-int do_mount(char *source, char *target, char *domain, const char *authtok, uid_t uid, gid_t gid, const char *user, int background);
+int do_mount(char *source, char *target, char *domain, char *options, const char *authtok, uid_t uid, gid_t gid, const char *user, int background);
int already_mounted(char *path);
int read_mounts(mtab_t *mtab, size_t size);
void slog(const char *format, ...);
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/pam-cifs/pam_sm_open_session.c new/pam-cifs/pam_sm_open_session.c
--- old/pam-cifs/pam_sm_open_session.c 2006-08-01 16:58:52.000000000 +0200
+++ new/pam-cifs/pam_sm_open_session.c 2007-02-26 11:43:41.000000000 +0100
@@ -114,13 +114,13 @@
char target[PATH_MAX];
if (pam_cifs_options.mount_home > 0) {
- strncpy(target, pwd->pw_dir, PATH_MAX);
+ strncpy(target, pwd->pw_dir, sizeof(target));
}
else {
- strncpy(target, pam_cifs_options.pathprefix, PATH_MAX);
- strncat(target, "/", PATH_MAX);
- strncat(target, user, PATH_MAX);
- strncat(target, pam_cifs_options.pathsuffix, PATH_MAX);
+ strncpy(target, pam_cifs_options.pathprefix, sizeof(target));
+ strncat(target, "/", sizeof(target)-strlen(target)-1);
+ strncat(target, user, sizeof(target)-strlen(target)-1);
+ strncat(target, pam_cifs_options.pathsuffix, sizeof(target)-strlen(target)-1);
}
struct stat statbuf;
@@ -129,8 +129,8 @@
if (pam_cifs_options.make_mount_point > 0) {
slog("should create mount point %s", target);
char newpath[PATH_MAX];
- strncpy(newpath, user, PATH_MAX);
- strncat(newpath, pam_cifs_options.pathsuffix, PATH_MAX);
+ strncpy(newpath, user, sizeof(newpath));
+ strncat(newpath, pam_cifs_options.pathsuffix, sizeof(newpath)-strlen(newpath)-1);
if (mkdirpath(pam_cifs_options.pathprefix, newpath, S_IRWXU, pwd->pw_uid, pwd->pw_gid) < 0) {
slog("can't make %s in %s\n", newpath, pam_cifs_options.pathprefix);
return cleanup(PAM_SESSION_ERR);
@@ -149,21 +149,21 @@
}
char source[PATH_MAX];
- strncpy(source, pam_cifs_options.sourceprefix, PATH_MAX);
- strncat(source, "/", PATH_MAX);
- strncat(source, user, PATH_MAX);
- strncat(source, pam_cifs_options.sourcesuffix, PATH_MAX);
+ strncpy(source, pam_cifs_options.sourceprefix, sizeof(source));
+ strncat(source, "/", sizeof(source)-strlen(source)-1);
+ strncat(source, user, sizeof(source)-strlen(source)-1);
+ strncat(source, pam_cifs_options.sourcesuffix, sizeof(source)-strlen(source)-1);
- if (do_mount(source, target, pam_cifs_options.options, authtok, pwd->pw_uid,
+ if (do_mount(source, target, pam_cifs_options.domain, pam_cifs_options.options, authtok, pwd->pw_uid,
pwd->pw_gid, user, pam_cifs_options.background) < 0) {
return cleanup(PAM_SESSION_ERR);
}
if (strncmp(pam_cifs_options.linkname, "", PATH_MAX) != 0) {
char linkpath[PATH_MAX];
- strncpy(linkpath, pwd->pw_dir, PATH_MAX);
- strncat(linkpath, "/", PATH_MAX);
- strncat(linkpath, pam_cifs_options.linkname, PATH_MAX);
+ strncpy(linkpath, pwd->pw_dir, sizeof(linkpath));
+ strncat(linkpath, "/", sizeof(linkpath)-strlen(linkpath)-1);
+ strncat(linkpath, pam_cifs_options.linkname, sizeof(linkpath)-strlen(linkpath)-1);
slog("should create link %s to %s\n", linkpath, target);
if (symlink(target, linkpath) < 0) {
slog("symlink: %s\n", strerror(errno));
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/pam-cifs/parse_options.c new/pam-cifs/parse_options.c
--- old/pam-cifs/parse_options.c 2006-08-01 17:00:29.000000000 +0200
+++ new/pam-cifs/parse_options.c 2007-02-26 12:00:35.000000000 +0100
@@ -98,16 +98,14 @@
if (strcmp(param, "windomain") == 0) {
if (value != NULL) {
- strncpy(pam_cifs_options.options, "domain=", NAME_MAX);
- strncat(pam_cifs_options.options, value, NAME_MAX);
- strncat(pam_cifs_options.options, ",", NAME_MAX);
+ strncpy(pam_cifs_options.domain, value, NAME_MAX);
}
}
if (strcmp(param, "options") == 0) {
if (value != NULL) {
if (pam_cifs_options.options != NULL) {
- strncat(pam_cifs_options.options, value, NAME_MAX);
+ strncat(pam_cifs_options.options, value, sizeof(pam_cifs_options.options)-strlen(pam_cifs_options.options)-1);
}
else {
strncpy(pam_cifs_options.options, value, NAME_MAX);
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Remember to have fun...
---------------------------------------------------------------------
To unsubscribe, e-mail: opensuse-commit+unsubscribe@opensuse.org
For additional commands, e-mail: opensuse-commit+help@opensuse.org