See https://wiki.samba.org/index.php/Samba_Release_Planning Samba43 port needs to get replaced as its now EOL per 07-03-2017. This port will no longer get any security related fixes! Also I think we should have the samba46 port in ports too as that is now the stable release cycle, I noticed with samba43 and 44 we for a long time are only in the maintenance mode series. I don't know why not updated more upstream as samba 4.5 series is there already some time. Please update those ports asap please.
I'm interested in Samba 4.6 and I made a port of samba46. Samba 4.6.0 has been released on 07 March 2017, which includes fixing metadata xattr name for *BSD. cf. https://www.samba.org/samba/history/samba-4.6.0.html "vfs_fruit Netatalk metadata xattr name on *BSD" It's important change for OS X users who uses both netatalk3 and samba for the same directory. OS X Finder can see the same file tags through netatalk3 and samba 4.6, and can update, too. I need this change. Please take a look at attached samba46.shar and apply to the ports tree. I copied from net/samba44 and fixed patch files for samba 4.6. I found following 2 patches are not needed, because the original source files have been fixed. "net/samba44/files/patch-source3__smbd__close.c" "net/samba44/files/patch-source3__smbd__open.c" This patch breaks the change I mentioned above. "net/samba44/files/patch-source3__modules__vfs_fruit.c" So I deleted these 3 patches. talloc.patch bumps up to 2.1.9 which is required by samba 4.6. Thank you.
Created attachment 181021 [details] new port of net/samba46
Created attachment 181022 [details] bump up devel/talloc to 2.1.9
Comment on attachment 181021 [details] new port of net/samba46 Well, I have working samba45 port, but for samba46 we have an obstacle - tevent version 0.9.29, which seems required by other ports vs 0.9.31, which explicitly wanted by Samba 4.6. Trying to combine all those together :( Well, one option would be to deprecate 42,43 and exclude them from equation...
Thanks for the comment. You have committed tevent 0.9.31, (https://svnweb.freebsd.org/ports?view=revision&revision=430417) so I wrote the dependency to the latest tevent in samba46/Makefile. If you plan to change the version of tevent, I will follow it and update my patch.
(In reply to Timur I. Bakeyev from comment #4) Deprecate 42,43 seems a good thing for me as they are EOL and should not be used anymore in my opinion. Thanks for the great work here.
Created attachment 181175 [details] net/samba46 updated to 4.6.1
Samba has been updated to 4.6.1 for security fix. I updated my patches and obsoleted old one. See the new samba46.shar.
Samba46 is working fine for me!
Hi! Can you, please, explain where the patch patch-source3__winbindd__winbindd_dual_ndr.c comes from? And how does it mannage to work?
(In reply to naito.yuichiro from comment #8) Also, I don't get what does patch-source4__rpc_server__lsa__dcesrv_lsa.c do? The only real change I see there is: -static const struct dcesrv_interface dcesrv_lsarpc_interface; +const struct dcesrv_interface dcesrv_lsarpc_interface; which I don't see the reason for.
(In reply to Timur I. Bakeyev from comment #10) I wrote the patch "patch-source3__winbindd__winbindd_dual_ndr.c". I found 'winbind_get_pipe_fns()' function interface has changed in "work/samba-4.6.1/bin/default/librpc/gen_ndr/srv_winbind.h". I fixed as same as the definition in 'srv_winbind.h'. But I'm not sure how srv_winbind.h is generated. I'm guessing this error occurs on Linux machines, the source will be fixed by samba project someday. After the fix we can delete the patch.
(In reply to Timur I. Bakeyev from comment #11) The reason I wrote the patch is just deleting 'static' to fix the following error. ``` ../source4/winbind/winbindd.c -c -o default/source4/winbind/winbindd_1.o In file included from ../source4/rpc_server/lsa/dcesrv_lsa.c:4660: default/librpc/gen_ndr/ndr_lsa_s.c:2083:31: error: non-static declaration of 'dcesrv_lsarpc_interface' follows static declaration const struct dcesrv_interface dcesrv_lsarpc_interface = { ^ ../source4/rpc_server/lsa/dcesrv_lsa.c:48:38: note: previous definition is here static const struct dcesrv_interface dcesrv_lsarpc_interface; ^ 1 error generated. ```
Now we have Samba 4.5 and 4.6, 4.7 is coming.