Re: Bug in r361898 (was Re: poudriere: services_mkdb recompile with larger PROTOMAX)

From: Pedro Giffuni <pfg_at_FreeBSD.org>
Date: Thu, 31 Dec 2020 19:42:36 -0500
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)
> _at__at_ -1788,7 +1788,7 _at__at_
>  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.
Received on Thu Dec 31 2020 - 23:42:38 UTC

This archive was generated by hypermail 2.4.0 : Wed May 19 2021 - 11:41:26 UTC