From: Nirbhay Choubey Date: April 8 2011 7:43pm Subject: bzr commit into mysql-5.1 branch (nirbhay.choubey:3645) Bug#11757855 List-Archive: http://lists.mysql.com/commits/135124 X-Bug: 11757855 Message-Id: <201104081943.p38JhSGK019762@acsmt357.oracle.com> MIME-Version: 1.0 Content-Type: multipart/mixed; boundary="===============0850312318==" --===============0850312318== MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Content-Disposition: inline #At file:///home/nirbhay/Project/mysql/repo/bugs/mysql-5.1.49967/ based on revid:magne.mahre@stripped 3645 Nirbhay Choubey 2011-04-09 Bug#11757855 - 49967: built-in libedit doesn't read .editrc on linux. MySQL client when build with libedit support ignores .editrc at startup. The reason for this regression was the incluison of a safety check, issetugid(), which is not available on some linux platforms. Fixed by adding an equivalent check for platforms which have get[e][u|g]id() set of functions. @ cmd-line-utils/libedit/el.c Bug#11757855 - 49967: built-in libedit doesn't read .editrc on linux. Added function calls to check user/group IDs on linux systems which does not have issetugid() function. @ configure.in Bug#11757855 - 49967: built-in libedit doesn't read .editrc on linux. Added check for getuid, geteuid, getgid, getegid functions. modified: cmd-line-utils/libedit/el.c configure.in === modified file 'cmd-line-utils/libedit/el.c' --- a/cmd-line-utils/libedit/el.c 2009-06-11 16:21:32 +0000 +++ b/cmd-line-utils/libedit/el.c 2011-04-08 19:42:58 +0000 @@ -478,7 +478,10 @@ el_source(EditLine *el, const char *fnam fp = NULL; if (fname == NULL) { -#ifdef HAVE_ISSETUGID +#if (defined(HAVE_ISSETUGID) || (defined(HAVE_GETUID) && \ + defined(HAVE_GETEUID) && \ + defined(HAVE_GETGID) && \ + defined(HAVE_GETEGID))) static const char elpath[] = "/.editrc"; /* XXXMYSQL: Portability fix (for which platforms?) */ #ifdef MAXPATHLEN @@ -486,9 +489,13 @@ el_source(EditLine *el, const char *fnam #else char path[4096]; #endif - +#ifdef HAVE_ISSETUGID if (issetugid()) return (-1); +#else + if (getuid() != geteuid() || getgid() != getegid()) + return (-1); +#endif if ((ptr = getenv("HOME")) == NULL) return (-1); if (strlcpy(path, ptr, sizeof(path)) >= sizeof(path)) @@ -498,9 +505,10 @@ el_source(EditLine *el, const char *fnam fname = path; #else /* - * If issetugid() is missing, always return an error, in order - * to keep from inadvertently opening up the user to a security - * hole. + * If issetugid() or the above mentioned get[e][u|g]id() + * functions are missing, always return an error, in order + * to keep from inadvertently opening up the user to a + * security hole. */ return (-1); #endif === modified file 'configure.in' --- a/configure.in 2011-03-03 20:11:47 +0000 +++ b/configure.in 2011-04-08 19:42:58 +0000 @@ -1963,7 +1963,7 @@ AC_CHECK_HEADER(vis.h, [AC_DEFINE([HAVE_VIS_H], [1],[Found vis.h and the strvis() function])])]) AC_CHECK_FUNCS(strlcat strlcpy) -AC_CHECK_FUNCS(issetugid) +AC_CHECK_FUNCS(issetugid getuid geteuid getgid getegid) AC_CHECK_FUNCS(fgetln) AC_CHECK_FUNCS(getline flockfile) --===============0850312318== MIME-Version: 1.0 Content-Type: text/bzr-bundle; charset="us-ascii"; name="bzr/nirbhay.choubey@stripped" Content-Transfer-Encoding: 7bit Content-Disposition: inline # Bazaar merge directive format 2 (Bazaar 0.90) # revision_id: nirbhay.choubey@stripped\ # c5j7hcl1qannbnck # target_branch: file:///home/nirbhay/Project/mysql/repo/bugs/mysql-\ # 5.1.49967/ # testament_sha1: 22d16e0480539e988dd4b522a7167678da61a851 # timestamp: 2011-04-09 01:13:09 +0530 # base_revision_id: magne.mahre@stripped\ # 9xe5fqklvg12495n # # Begin bundle IyBCYXphYXIgcmV2aXNpb24gYnVuZGxlIHY0CiMKQlpoOTFBWSZTWQZlSSIAAvp/gEA1EAJ59/// f+8vDr////RgBy+9rW2drLUzsGtW+7VaaPdcThkk0TBBlPQNCekeU8hGgAaA0aAaPUyAZIRkyaGQ Qap6PVGmmgDIAyDQAANNDjRkyMIxAMJoMAmg0DJk0ZMhhAYSJCNCYmphU9T9U9T9J6TCj1NPUyAB kAADJoG1VNpT1Mnkno0PVB6jT0TGpo0A0A0AyYRgmgSSTEaNEZEwE0GjQTJqD1PTSeSAANDT1PUi 7lgLAuwdem2RHf3A0iZM7Xvq/fYUTQu+RzmHdSimsoC2IoS9jxBHgLP17MZGDq9fY6ENfx9OYAIA YkP9dhk4wrXcfsZjGxsK/wj1TqDWmkSooIZzR5lLjwnwuj/hBr4+Ezrla5KYpbVpjnMqkYec0TLL QfGIKRqBzDDAw3BmYCRHKI8McHKfqrm756a1R0aZyNxK+cty1aWZVH23K64gsKoFAUwyOHRz1cFk omPJM3nJs7e3LZx0ctx1de1FDINi7w6lmsFoghoYfr9Eth2yPKmm5OH3WhhaujKrJqPGOyZiDrxl dcAT1UBuuMgSZS1smednLfoEyTsvre5NdF+RE0DFQLi8E4DSZNkrZRNhbOQla1BhgmU3tsopqaFz qGLmmpBJqUoAs9JUlzgVsnVTCgXFJWETlxwShvttwsl4eb3qXr4LYTBcDieXZQFWCm8pUbZ1PkdK e3PHXiZ5c4sRwChQaiy7q2VmG2hZQ6tDlbtcQAtWpS1a4DES8ujFyVwFtVd9GeaAYwGxilqbwYxW GVWlABAXDLhGuw4rx3QgDDokXmidJQzVxKQaojDX1KSkTKEEUdbTQpb7C7JzNeWxSnWqC8L6Qg9m QGN+e0s5zUEmXKCODVNry3KnZtWRXKa2sGpay87YuRdxbEzO/MAO5KRiKIl7KQgRgdrv2plwxAkq lmtNMwhxRLWHUERhYy4vpCsjYd2QtwtbWYCliedQXcbMxEIu6jPYVOvAri+YVLjwYA/A4V6APp1W F9QGKb7h0blSsQGQzV79zNOt7lEqoB87qH4PIXE5R0W2PrTo1U3ZqHYpVjU0gajVJ6koJjIICsoB hnk5HFSWNKqJOVJTdaODXm7ZMGoWudswoRVwqTqiyr9/ktPOdfNiNd5vRv+w8O+di8hAf9QULARE QJ54D+K+fSH4Jbcp0nMEVqBeqoBqWlXqCbfGRAYfSM/5SjfODGGMmKm1O/vAWs9C5ZTOW/KQnmyo cl9h50BI6igXV2E+jv7j2y+HeCuXuHu5y+8Io3i7/U8vGuozOKuD4AeL8aUbMVsGvIjqJAo+Og0+ AMO1HeP0GI0B7iGYXqI4BEb8wDvf9vsyswdIioPMJl+MvJxlC8hMBxh5W1rPhdE25ViayQRQehUO g3OE2WuMAJgrZ00uuEo+eSjmViPEsL1dAMDbXIHIYPfxac3LAqGrCUqQ53wRDzOwq3mr/D0CRk4y 9KW64IhjAyGxndtuN2cEQkUj6WFrCV0ILBDk4a05pb6NkB+9b24C0sUOvSnepcE0RWJmB19mgrRI QkgMwD+1iTbYqUIlDoOwbFxqig9rbt5L1KtD9xWGOWwuNvJSC73V2buI+qvZPoVl+WFmPKFkpu4m kMGpHjY+brgoRgpEJ8nPlGBdsgQcpwqoo1GbDxLXYNKYeh284xqMEVrZSPRDOSVqe9glupPamwqW v+Tm1LKBurqBeR7NMWyG4tXRvn2wjM26KrZqUchPbj0iLOUCo8W0VB9AUVeD0GAZFMCNjcSzat4u lOyZugwH8zhkRAM8/iYndq1d/pcLb1o69uBJBUhMpem7gY5kTpQ92aNmG3dFG/hqtiMwMH4VILtO 5F83S1sokmJObz3lAT1RspKUirnhMENNsoMeqieGMISjchhgeBNE6F+m6oa1l0t3SBOFx3Bd1wvz wRHa2fQr7C9k6vkTU6MSSvXIq1EfEtiqzEqM8QjFa5ZP81JbvRZ6y63F3SvHNNDb4JqBPE6gPls1 AU3oZEm6lxs1dAnOcyGRTmWWnWeCYw6KQLMZyzUhE2BgKJpsmfaFRvfrEs+1OhW9wM4DpehyjBtF hQ1GoFah+qCOUeqC+4RVriteRjbeBPQwwoMLoCs8jz5rS8RGRsEYaaeMAcDzMxv2TWm5CpEPhSMY JKfGhNS2nZsQtwaJgO1f12IbaYQqV9wnCcUcaNuMfJVUgS1CrevV9lZ09bItChbPMvZfeMFMoA4m HASMkQXh02rDKzuO53xEaK1UQzGU0aKUZq+/ZzXqN+HrVlLJxG1RwVKFDxhuHJRdtkswvqSV8Ewe q3IzOkxYniqrFEk1eEVYRglJqOOAjf9q1hSURERNCJd7QF1jbBvkSWGDjO9XMj0jVfYoRoM+I2mQ HDAjce4ESDrmoQyk26jmQ53OXya4i4pLXjtS5T0DQQeuGmE1lk+k5GjcKh79fkZTOf+LuSKcKEgD MqSRAA== --===============0850312318==--