Re: FreeBSD port of the Omada SDN Controller

From: Marcin Cieslak <saper_at_saper.info>
Date: Sat, 30 Aug 2025 19:29:07 UTC
On Sat, 30 Aug 2025, Mark Felder wrote:

>
>
>> On Aug 26, 2025, at 15:33, Marcin Cieslak <saper@saper.info> wrote:
>>
>> On Tue, 26 Aug 2025, Marcin Cieslak wrote:
>>
>>> On Tue, 26 Aug 2025, Mark Felder wrote:
>>>
>>>> If someone could figure out a way to dynamically patch the class in the jar file -- either manually with a script the porter needs to run or as part of the port itself -- I'll pay out a $200 bounty. It would remove a lot of tedious pain when doing updates. I don't think it's possible though.
>>>
>>> What about something like the below. Requires xxd and jar.
>>>
>>> JARFILE=../Omada_SDN_Controller_v5.15.24.19_linux_x64/lib/omada-common-5.15.24.19.jar
>>> ISLINUXOS_CLASS="com/tplink/smb/omada/common/util/S.class"
>>
>> [...]
>>> Can't test if this really works at the moment, should update the omada-common-5.15.24.19.jar file in place. If "check" fails, we need to figure out whether the Linux-checking function has been moved, renamed or discarded.
>>
>> This seems to let me go past the following message:
>>
>> 08-26-2025 22:28:52.159 ERROR [main] [] c.t.s.o.s.OmadaLinuxMain(): Error: system is not linux, should not call this founction
>>
>>
>
>
> That's looking promising. Does it ever listen on these ports? If so, it started up correctly. Might take 30 seconds or so.

Not yet there, as I can't bootstrap MongoDB yet there (rust bootstrapping problem...).

The app goes on to try to start MongoDB and stops after several attempts to initialize
the authentication framework.

One question though:

"server.log" contains the following line though:

08-30-2025 18:45:35.156 WARN [main] [] c.t.s.o.c.u.S(): Nonsupport system:freebsd.

Can you please check the source code for com/tplink/smb/omada/common/util/S.class
if this has any importance at all? (it does not affect the startup but maybe we should
check this...)

(The code I have posted is missing one } at the end of the check() shell function).

Marcin