Return-Path: Received: from pch.mit.edu (PCH.MIT.EDU [18.7.21.90]) by krbdev.mit.edu (Postfix) with ESMTP id 57B213F2FD; Thu, 25 Sep 2014 13:08:21 -0400 (EDT) Received: from pch.mit.edu (pch.mit.edu [127.0.0.1]) by pch.mit.edu (8.13.6/8.12.8) with ESMTP id s8PH8KVO019024; Thu, 25 Sep 2014 13:08:20 -0400 Received: from mailhub-dmz-1.mit.edu (mailhub-dmz-1.mit.edu [18.9.21.41]) by pch.mit.edu (8.13.6/8.12.8) with ESMTP id s8PF2tCl002975 for ; Thu, 25 Sep 2014 11:02:55 -0400 Received: from dmz-mailsec-scanner-4.mit.edu (dmz-mailsec-scanner-4.mit.edu [18.9.25.15]) by mailhub-dmz-1.mit.edu (8.13.8/8.9.2) with ESMTP id s8PF1SSw022947 for ; Thu, 25 Sep 2014 11:02:54 -0400 X-Auditid: 1209190f-f79aa6d000005b45-48-54242e9db759 Authentication-Results: symauth.service.identifier Received: from userp1040.oracle.com (userp1040.oracle.com [156.151.31.81]) (using TLS with cipher AES256-SHA (256/256 bits)) (Client did not present a certificate) by dmz-mailsec-scanner-4.mit.edu (Symantec Messaging Gateway) with SMTP id CC.D8.23365.D9E24245; Thu, 25 Sep 2014 11:02:54 -0400 (EDT) Received: from acsinet22.oracle.com (acsinet22.oracle.com [141.146.126.238]) by userp1040.oracle.com (Sentrion-MTA-4.3.2/Sentrion-MTA-4.3.2) with ESMTP id s8PF2pSX017858 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=OK) for ; Thu, 25 Sep 2014 15:02:52 GMT Received: from userz7021.oracle.com (userz7021.oracle.com [156.151.31.85]) by acsinet22.oracle.com (8.14.4+Sun/8.14.4) with ESMTP id s8PF2opi004074 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=FAIL) for ; Thu, 25 Sep 2014 15:02:51 GMT Received: from abhmp0014.oracle.com (abhmp0014.oracle.com [141.146.116.20]) by userz7021.oracle.com (8.14.4+Sun/8.14.4) with ESMTP id s8PF2oRJ024082 for ; Thu, 25 Sep 2014 15:02:50 GMT Received: from [10.195.1.18] (/10.195.1.18) by default (Oracle Beehive Gateway v4.0) with ESMTP ; Thu, 25 Sep 2014 08:02:49 -0700 Message-ID: <54242E94.6030804@oracle.com> Date: Thu, 25 Sep 2014 08:02:44 -0700 From: Tsu-Phong Wu Organization: Oracle User-Agent: Mozilla/5.0 (X11; SunOS i86pc; rv:6.0) Gecko/20110814 Thunderbird/6.0 MIME-Version: 1.0 To: krb5-bugs@mit.edu Subject: rename() failure in src/util/profile/prof_file.c:write_data_to_file() Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit X-Source-Ip: acsinet22.oracle.com [141.146.126.238] X-Brightmail-Tracker: H4sIAAAAAAAAA+NgFjrHKsWRWlGSWpSXmKPExsUyZ7p8oO48PZUQg+V7xS0aHh5nd2D0aDpz lDmAMYrLJiU1J7MstUjfLoEr48zOt0wF09gq1nybwNbA+J25i5GTQ0LAROLhrQlgNqOAkcTu c69YIeJiEhfurWfrYuTiEBLYwCTx5uZnVghnJZPEmoanjBDOVCaJXw2foDLnGSWedaxigXBa GSUONvSxgQzjFdCUOLxmB1ALBweLgKrE/QsOIGE2AR2JaUtWgJXwC4hI/G5+xA5iiwoESnyb vg2qVVDi5MwnLCC2iICoxMu/x8BsZqDeO0sOgdnCAn4S6x7sYwUZzyxgLfFtdxFEibzE9rdz oN40lpi6so1tAqPILCRTZyF0zELSsYCReRWjbEpulW5uYmZOcWqybnFyYl5eapGuiV5uZole akrpJkZg0AtxSvLvYPx2UOkQowAHoxIPr4e/cogQa2JZcWXuIUZJDiYlUd5eJZUQIb6k/JTK jMTijPii0pzU4kOMEhzMSiK8eupAOd6UxMqq1KJ8mJQ0B4uSOO+mH3whQgLpiSWp2ampBalF MFkmDvZDjDIcHEoSvL91gLoFi1LTUyvSMnNKkNVwgggukDU8QGu2gBTyFhck5hZnpkMUnWI0 5mhpetvLxLGu81s/kxBLXn5eqpQ4bzNIqQBIaUZpHtxIWDK7xCgrJczLyMDAIMQDdBMwKFDl XzGKA4NBmHcfyBSezLwSuH2vgE5hAjpF6YgyyCkliQgpqQbG7KA9fxMjl96QZP1ddCgrhU9S evMeZYnWrLRu3Ud9n5gupe/bqNtQydF0vpb9qrxnV7aapKYCl0TD0ckWN7nibsT47GlZu0/+ TPTPOg6VA1LZ69cH/3DnXzM39pyBk/TCmwcsK/ebKweExD/6fXnisqDVbHcZLvrpbi48Em9T l/dEMvDQr+9KLMUZiYZazEXFiQDtrWDyYQMAAA== X-Mailman-Approved-At: Thu, 25 Sep 2014 13:08:19 -0400 CC: "WU,TSU-PHONG" X-Beenthere: krb5-bugs-incoming@mailman.mit.edu X-Mailman-Version: 2.1.6 Precedence: list Sender: krb5-bugs-incoming-bounces@PCH.mit.edu Errors-To: krb5-bugs-incoming-bounces@PCH.mit.edu X-RT-Original-Encoding: iso-8859-1 Content-Length: 767 Hi, Like to report a bug with simple fix below: unlink(old_file); if (make_hard_link(outfile, old_file) == 0) { /* Okay, got the hard link. Yay. Now we've got our backup version, so just put the new version in place. */ if (rename(new_file, outfile)) { /* Weird, the rename didn't work. But the old version should still be in place, so no special cleanup is needed. */ <<<<< unlink(old_file); <<<<< In case of rename() failure, outfile should be fine. <<<<< But old_file is extra from above make_hard_link(), and should be removed. retval = errno; goto errout; } } else if (errno == ENOENT && can_create) {