Bug in r361898 (was Re: poudriere: services_mkdb recompile with larger PROTOMAX)
Pedro Giffuni
pfg at FreeBSD.org
Fri Jan 1 00:42:38 UTC 2021
On 12/31/20 5:47 PM, Daniel Eischen wrote:
> On Thu, 31 Dec 2020, Daniel Eischen wrote:
>
>> I see this message in src/UPDATING:
>>
>> 20201216:
>> The services database has been updated to cover more of the basic
>> services expected in a modern system. The database is big enough
>> that it will cause issues in mergemaster in Releases previous to
>> 12.2 and 11.3, or in very old current systems from before r358154.
>>
>> I'm trying to update a poudriere jail from a freshly built -current
>> system (r368820):
>>
>> FreeBSD vega.my.domain 13.0-CURRENT FreeBSD 13.0-CURRENT #0 r368820
>> Wed Dec 30 15:55:06 EST 2020
>>
>> I've tried running this command twice:
>>
>> export MAKEOBJDIRPREFIX=/opt/FreeBSD/obj/head.obj
>> poudriere jail -u -j 13amd64
>>
>> [ /opt/FreeBSD/obj/head.obj is my freshly built (r368820) obj tree is ]
>>
>> services_mkdb was updated in the jail on the first pass:
>>
>> # ls -l /usr/local/poudriere/jails/13amd64/usr/sbin/services_mkdb
>> -r-xr-xr-x 1 root wheel 15288 Dec 31 13:02
>> /usr/local/poudriere/jails/13amd64/usr/sbin/services_mkdb
>>
>> But as on the first pass of 'poudriere jail -u -j 13amd64`, I still get
>> the following error:
>>
>> ...
>>
>> --- _CONFSINS_services ---
>> install -N /opt/FreeBSD/svn/head/etc -C -o root -g wheel -m 644
>> /opt/FreeBSD/svn/head/usr.sbin/services_mkdb/services
>> /usr/local/poudriere/jails/13amd64/etc/services
>> --- installconfig_subdir_usr.bin ---
>> --- installconfig_subdir_usr.bin/nice ---
>> ===> usr.bin/nice (installconfig)
>> --- installconfig_subdir_usr.sbin ---
>> --- afterinstallconfig ---
>> --- installconfig_subdir_lib ---
>> --- installconfig_subdir_lib/ncurses ---
>> --- installconfig_subdir_lib/ncurses/ncurses ---
>> ===> lib/ncurses/ncurses (installconfig)
>> --- installconfig_subdir_usr.sbin ---
>> services_mkdb -l -q -o
>> /usr/local/poudriere/jails/13amd64/var/db/services.db
>> /usr/local/poudriere/jails/13amd64/etc/services
>> --- installconfig_subdir_usr.bin ---
>> --- installconfig_subdir_usr.bin/nl ---
>> ===> usr.bin/nl (installconfig)
>> --- installconfig_subdir_usr.sbin ---
>> services_mkdb: Ran out of protocols adding `divert'; recompile with
>> larger PROTOMAX
>>
>> What's the work-around for this? services_mkdb seems to have been
>> updated on the first pass off 'poudiere jail -u ...', but still fails
>> on the second pass.
>
> A typo (tdp was used instead of tcp) in the services file seems to
> have been introduced in r361898. This is the patch that fixes the
> problem for me.
>
> Index: usr.sbin/services_mkdb/services
> ===================================================================
> --- usr.sbin/services_mkdb/services (revision 368820)
> +++ usr.sbin/services_mkdb/services (working copy)
> @@ -1788,7 +1788,7 @@
> iscsi-target 3260/udp # iSCSI port
> mysql 3306/tcp #MySQL
> mysql 3306/udp #MySQL
> -ms-wbt-server 3389/tdp rdp #MS WBT Server
> +ms-wbt-server 3389/tcp rdp #MS WBT Server
> ms-wbt-server 3389/udp #MS WBT Server
> efi-lm 3392/tcp #EFI License Management
> efi-lm 3392/udp #EFI License Management
>
Oops .... thanks !
It proved a nice chance to start using git.
Pedro.
More information about the freebsd-current
mailing list