Solved issue with sudo-1.8.23

sudo failed update with
Code:
===>   Registering installation for sudo-1.8.23
pkg-static: lstat(/ram/usr/ports/security/sudo/work/stage/var/run/sudo/): No such file or directory
*** Error code 74

Stop.
make[2]: stopped in /usr/ports/security/sudo
*** Error code 1

Stop.
make[1]: stopped in /usr/ports/security/sudo
*** Error code 1

Stop.

could solved with adding to the Makefile
CONFIGURE_ARGS+=--with-rundir=/var/run/sudo

I mailed the maintainer. He said, this line should not needed, and he could not reproduce this issue.

So my question:
Does someone have the same issue, or had someone an idea why this happened.
(On 10.4. amd64 with standard options. Etc/make.conf is renamed in the moment).
 
Can you post the whole error? The actual error appears to happen before the bit you posted. This seems to be a consequence of a previous error.
 
No, this is the whole error. It does not could find /stage/var/run/sudo/. /run/sudo is direct in the stage directory (/stage/run/sudo).
If I try to run make package work/pkg is empty.
It works if I add CONFIGURE_ARGS (see above) or add to the Makefile ${MKDIR} ${STAGEDIR}/var/run/sudo (under post-install).
 
No, it's not the whole error. It's only the last part, but the actual error might be buried in between a bunch of regular output. Do you know how to use script(1)? You can use it to capture the entire output from the build process.
 
Ok, here it is (I have sent it already to the maintainer).
 

Attachments

  • screenlog.0.txt
    156 KB · Views: 216
Looking at the logs I think there might be something wrong with the automatic generation of the pkg-plist. I'm comparing your log with mine but I see I'm one version behind (and my logs don't show this error). That certainly narrows down the issue, so now I'm looking at the differences between this version and the previous one.
 
sudo-1.8.23_1 is a fix for the ldap option. Has nothing to do with this issue.

Code:
work/sudo-1.8.23/NEWS

* The /run directory is now used in preference to /var/run if it

   exists. Bug #822.

Does this mean, we does not need /var/run/sudo in pkg-plist?
 
Do you have a /run dir in the root filesystem for some reason? I can confirm the problem if I mkdir /run before trying to build sudo. As you suggested the maintainer needs to add CONFIGURE_ARGS+=--with-rundir=/var/run/sudo to prevent configure from accidentally picking the wrong run directory.
 
That suggest the issue is with sudo itself. The previous version (1.8.22_1) didn't have that option and it built fine.

And indeed: https://www.sudo.ws/stable.html#1.8.23
The /run directory is now used in preference to /var/run if it exists. Bug #822.

But, "in preference" suggests it will fallback to /var/run if /run doesn't exists. And that doesn't appear to be happening.

Edit: this is the commit that changed the behavior: https://www.sudo.ws/repos/sudo/rev/ec2febe6f8a3

Looking at those bits of code, it does suggest it will use /var/run if/when /run doesn't exists.
 
Back
Top