Your message dated Sun, 11 Aug 2013 10:57:55 +0100
with message-id <[email protected]>
and subject line Re: Bug#344898: Web UI: can't login if password is longer than
32 characters
has caused the Debian Bug report #344898,
regarding cups: the web interface doesn't accept passwords longer than 32 chars.
to be marked as done.
This means that you claim that the problem has been dealt with.
If this is not the case it is now your responsibility to reopen the
Bug report if necessary, and/or fix the problem forthwith.
(NB: If you are a system administrator and have no idea what this
message is talking about, this may indicate a serious mail system
misconfiguration somewhere. Please contact [email protected]
immediately.)
--
344898: http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=344898
Debian Bug Tracking System
Contact [email protected] with problems
--- Begin Message ---
Package: cups
Version: 1.3.8-1+lenny6
Severity: important
Tags: patch
Dear maintainer,
In my quest to get my printer usable (see also #542640). I have found
that the cups web interface doesn't accept passwords longer than 32
chars and fails with a blank page.
32 correspond to the length of a md5 hash. A define MAX_USERPASSWORD was
defined but not used.
I have written a patch; it sets MAX_USERPASSWORD to 128 and uses it. I
have also added the define MD5_HASHLEN with the value 33.
The patch seems to work. Any suggestion will be appreciated.
Best Regards.
-- Louis Opter
-- System Information:
Debian Release: 5.0.2
APT prefers stable
APT policy: (500, 'stable')
Architecture: amd64 (x86_64)
Kernel: Linux 2.6.26-2-amd64 (SMP w/2 CPU cores)
Locale: LANG=en_US.UTF-8, LC_CTYPE=en_US.UTF-8 (charmap=UTF-8)
Shell: /bin/sh linked to /bin/bash
Versions of packages cups depends on:
ii adduser 3.110 add and remove users and groups
ii cups-common 1.3.8-1+lenny6 Common UNIX Printing System(tm) -
ii debconf [debcon 1.5.24 Debian configuration management sy
ii ghostscript 8.62.dfsg.1-3.2lenny1 The GPL Ghostscript PostScript/PDF
ii libavahi-compat 0.6.23-3lenny1 Avahi Apple Bonjour compatibility
ii libc6 2.7-18 GNU C Library: Shared libraries
ii libcups2 1.3.8-1+lenny6 Common UNIX Printing System(tm) -
ii libcupsimage2 1.3.8-1+lenny6 Common UNIX Printing System(tm) -
ii libdbus-1-3 1.2.1-5+lenny1 simple interprocess messaging syst
ii libgnutls26 2.4.2-6+lenny1 the GNU TLS library - runtime libr
ii libkrb53 1.6.dfsg.4~beta1-5lenny1 MIT Kerberos runtime libraries
ii libldap-2.4-2 2.4.11-1 OpenLDAP libraries
ii libpam0g 1.0.1-5+lenny1 Pluggable Authentication Modules l
ii libpaper1 1.1.23+nmu1 library for handling paper charact
ii libslp1 1.2.1-7.5 OpenSLP libraries
ii lsb-base 3.2-20 Linux Standard Base 3.2 init scrip
ii perl-modules 5.10.0-19 Core Perl modules
ii poppler-utils [ 0.8.7-2 PDF utilitites (based on libpopple
ii procps 1:3.2.7-11 /proc file system utilities
ii ssl-cert 1.0.23 simple debconf wrapper for OpenSSL
Versions of packages cups recommends:
pn avahi-utils <none> (no description available)
ii cups-client 1.3.8-1+lenny6 Common UNIX Printing System(tm) -
ii foomatic-filters 3.0.2-20080211-3.2 OpenPrinting printer support - fil
pn smbclient <none> (no description available)
Versions of packages cups suggests:
ii cups-bsd 1.3.8-1+lenny6 Common UNIX Printing System(tm) -
pn cups-driver-gutenprint <none> (no description available)
ii cups-pdf 2.4.8-3 PDF printer for CUPS
ii foomatic-db 20080211-2+nmu1 OpenPrinting printer support - dat
ii foomatic-db-engine 3.0.2-20080211-1 OpenPrinting printer support - pro
ii hplip 2.8.6.b-4 HP Linux Printing and Imaging Syst
pn xpdf-korean | xpdf-japa <none> (no description available)
-- debconf information:
* cupsys/raw-print: true
* cupsys/backend: usb
diff -u cups-1.3.8-orig/scheduler/auth.c cups-1.3.8/scheduler/auth.c
--- cups-1.3.8-orig/scheduler/auth.c 2008-04-21 19:13:22.000000000 -0400
+++ cups-1.3.8/scheduler/auth.c 2009-08-25 11:59:12.000000000 -0400
@@ -115,7 +115,7 @@
const char *con_server_name);
#endif /* HAVE_GSSAPI */
static char *get_md5_password(const char *username,
- const char *group, char passwd[33]);
+ const char *group, char passwd[MD5_HASHLEN]);
#if HAVE_LIBPAM
static int pam_func(int, const struct pam_message **,
struct pam_response **, void *);
@@ -131,8 +131,8 @@
#if HAVE_LIBPAM
typedef struct cupsd_authdata_s /**** Authentication data ****/
{
- char username[33], /* Username string */
- password[33]; /* Password string */
+ char username[MAX_USERPASS], /* Username string */
+ password[MAX_USERPASS]; /* Password string */
} cupsd_authdata_t;
#endif /* HAVE_LIBPAM */
@@ -339,12 +339,12 @@
int type; /* Authentication type */
const char *authorization; /* Pointer into Authorization string */
char *ptr, /* Pointer into string */
- username[256], /* Username string */
- password[33]; /* Password string */
+ username[MAX_USERPASS], /* Username string */
+ password[MAX_USERPASS]; /* Password string */
cupsd_cert_t *localuser; /* Certificate username */
char nonce[HTTP_MAX_VALUE], /* Nonce value from client */
- md5[33], /* MD5 password */
- basicmd5[33]; /* MD5 of Basic password */
+ md5[MD5_HASHLEN], /* MD5 password */
+ basicmd5[MD5_HASHLEN]; /* MD5 of Basic password */
static const char * const states[] = /* HTTP client states... */
{
"WAITING",
@@ -1282,7 +1282,7 @@
{
int i; /* Looping var */
struct group *group; /* System group info */
- char junk[33]; /* MD5 password (not used) */
+ char junk[MD5_HASHLEN]; /* MD5 password (not used) */
#ifdef HAVE_MBR_UID_TO_UUID
uuid_t useruuid, /* UUID for username */
groupuuid; /* UUID for groupname */
@@ -2516,13 +2516,13 @@
static char * /* O - MD5 password string */
get_md5_password(const char *username, /* I - Username */
const char *group, /* I - Group */
- char passwd[33]) /* O - MD5 password string */
+ char passwd[MD5_HASHLEN]) /* O - MD5 password string */
{
cups_file_t *fp; /* passwd.md5 file */
char filename[1024], /* passwd.md5 filename */
line[256], /* Line from file */
- tempuser[33], /* User from file */
- tempgroup[33]; /* Group from file */
+ tempuser[MAX_USERPASS], /* User from file */
+ tempgroup[MAX_USERPASS]; /* Group from file */
cupsdLogMessage(CUPSD_LOG_DEBUG2,
diff -u cups-1.3.8-orig/scheduler/cupsd.h cups-1.3.8/scheduler/cupsd.h
--- cups-1.3.8-orig/scheduler/cupsd.h 2008-02-15 18:26:51.000000000 -0500
+++ cups-1.3.8/scheduler/cupsd.h 2009-08-25 11:23:38.000000000 -0400
@@ -74,13 +74,14 @@
# define TRUE (!FALSE)
#endif /* !FALSE */
+#define MD5_HASHLEN 33
/*
* Implementation limits...
*/
#define MAX_ENV 100 /* Maximum number of environment strings */
-#define MAX_USERPASS 33 /* Maximum size of username/password */
+#define MAX_USERPASS 128 /* Maximum size of username/password */
#define MAX_FILTERS 20 /* Maximum number of filters */
#define MAX_SYSTEM_GROUPS 32 /* Maximum number of system groups */
--- End Message ---
--- Begin Message ---
On Tue 27 Dec 2005 at 13:09:41 +0100, Jean-Philippe Guérard wrote:
> If I choose a password with more than 32 characters, I can't get
> recognised anymore by the Web UI.
>
> Chosing a password of 32 characters or less works fine.
http://www.cups.org/documentation.php/doc-1.6/whatsnew.html?VERSION=1.6&Q=
What's New in CUPS 1.6
5. Passwords; Passwords up to 127 characters are now supported.
Hence closing this report.
Regards,
Brian.
--- End Message ---