Bacula 7.4.6 fails to compile on OpenBSD 6.0.

classic Classic list List threaded Threaded
4 messages Options
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Bacula 7.4.6 fails to compile on OpenBSD 6.0.

Vanush "Misha" Paturyan
Hello list.

I must warn you I am new to the OpenBSD, so maybe I am doing something wrong, but I am unable to compile Bacula 7.4.6 on a freshly installed OpenBSD 6.0. I was following "Regression Testing" instructions when I discovered this. Compilation fails with following:

Compiling bnet.c
bnet.c: In function 'int set_socket_errno(int)':
bnet.c:632: error: 'EPROTO' was not declared in this scope
make[1]: *** [Makefile:184: bnet.lo] Error 1
make[1]: Leaving directory '/home/misha/bacula/bacula/src/lib'


  ====== Error in /home/misha/bacula/bacula/src/lib ======


make: *** [Makefile:148: all] Error 1

Quick Googleing shows that "EPROTO isn’t defined on OpenBSD", and applying the patch at the end of this email gets rid of the error, but what puzzles me is the fact that according to "git blame" block of code with that line it in was introduced in 2014. Has bacula not been compiled on OpenBSD for this long?

Another possible explanation could be that I’m not using tcp_wrappers when compiling bacula (I have a feeling tcp_wrappers have been removed from OpenBSD 6.0, but I cannot confirm it). Were tcp_wrappers hiding the issue somehow?

---
diff --git a/bacula/src/lib/bnet.c b/bacula/src/lib/bnet.c
index 4eddee2..58e54d8 100644
--- a/bacula/src/lib/bnet.c
+++ b/bacula/src/lib/bnet.c
@@ -629,7 +629,9 @@ int set_socket_errno(int sockstat)
       /* Handle errrors from prior connections as EAGAIN */
       switch (errno) {
          case ENETDOWN:
+#ifdef EPROTO
          case EPROTO:
+#endif
          case ENOPROTOOPT:
          case EHOSTDOWN:
 #ifdef ENONET
--
---
Vanush "Misha" Paturyan
Senior Technical Officer
Room 120
Computer Science Department
EOLAS Building
Maynooth University
Maynooth






------------------------------------------------------------------------------
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot
_______________________________________________
Bacula-devel mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/bacula-devel

signature.asc (465 bytes) Download Attachment
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: Bacula 7.4.6 fails to compile on OpenBSD 6.0.

Stuart Henderson
On 2017/03/14 20:54, Vanush "Misha" Paturyan wrote:

> Hello list.
>
> I must warn you I am new to the OpenBSD, so maybe I am doing something wrong, but I am unable to compile Bacula 7.4.6 on a freshly installed OpenBSD 6.0. I was following "Regression Testing" instructions when I discovered this. Compilation fails with following:
>
> Compiling bnet.c
> bnet.c: In function 'int set_socket_errno(int)':
> bnet.c:632: error: 'EPROTO' was not declared in this scope
> make[1]: *** [Makefile:184: bnet.lo] Error 1
> make[1]: Leaving directory '/home/misha/bacula/bacula/src/lib'
>
>
>   ====== Error in /home/misha/bacula/bacula/src/lib ======
>
>
> make: *** [Makefile:148: all] Error 1
>
> Quick Googleing shows that "EPROTO isn’t defined on OpenBSD", and
> applying the patch at the end of this email gets rid of the error, but
> what puzzles me is the fact that according to "git blame" block of
> code with that line it in was introduced in 2014. Has bacula not been
> compiled on OpenBSD for this long?
>
> Another possible explanation could be that I’m not using tcp_wrappers
> when compiling bacula (I have a feeling tcp_wrappers have been removed
> from OpenBSD 6.0, but I cannot confirm it). Were tcp_wrappers hiding the
> issue somehow?

The diff you sent matches what was added to OpenBSD ports.

libwrap was removed in OpenBSD 5.6, but that isn't related to this
EPROTO.

If you don't require the absolute latest version (OpenBSD 6.0 has
Bacula 7.4.2) you should be able to just pkg_add bacula-server (SD+DIR),
bacula-client (FD), or bacula-bat.

OpenBSD -current has 7.4.6 with a patch for the ACL/XATTR problem;
6.1 will package either that or 7.4.7 if available in time.

>
> ---
> diff --git a/bacula/src/lib/bnet.c b/bacula/src/lib/bnet.c
> index 4eddee2..58e54d8 100644
> --- a/bacula/src/lib/bnet.c
> +++ b/bacula/src/lib/bnet.c
> @@ -629,7 +629,9 @@ int set_socket_errno(int sockstat)
>        /* Handle errrors from prior connections as EAGAIN */
>        switch (errno) {
>           case ENETDOWN:
> +#ifdef EPROTO
>           case EPROTO:
> +#endif
>           case ENOPROTOOPT:
>           case EHOSTDOWN:
>  #ifdef ENONET
> --

------------------------------------------------------------------------------
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot
_______________________________________________
Bacula-devel mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/bacula-devel
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: Bacula 7.4.6 fails to compile on OpenBSD 6.0.

Vanush "Misha" Paturyan

> On 14 Mar 2017, at 21:12, Stuart Henderson <[hidden email]> wrote:
>
> On 2017/03/14 20:54, Vanush "Misha" Paturyan wrote:
>> Hello list.
>>
>> I must warn you I am new to the OpenBSD, so maybe I am doing something wrong, but I am unable to compile Bacula 7.4.6 on a freshly installed OpenBSD 6.0. I was following "Regression Testing" instructions when I discovered this. Compilation fails with following:
>>
>> <snip>
>
> The diff you sent matches what was added to OpenBSD ports.
>
> libwrap was removed in OpenBSD 5.6, but that isn't related to this
> EPROTO.
>
> If you don't require the absolute latest version (OpenBSD 6.0 has
> Bacula 7.4.2) you should be able to just pkg_add bacula-server (SD+DIR),
> bacula-client (FD), or bacula-bat.
>
> OpenBSD -current has 7.4.6 with a patch for the ACL/XATTR problem;
> 6.1 will package either that or 7.4.7 if available in time.
>
Stuart, thank you very much for your explanation, I should’ve checked OpenBSD ports before making all the noise Shows that my opening statement was genuine.

Misha.

---
Vanush "Misha" Paturyan
Senior Technical Officer
Room 120
Computer Science Department
EOLAS Building
Maynooth University
Maynooth






------------------------------------------------------------------------------
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot
_______________________________________________
Bacula-devel mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/bacula-devel

signature.asc (465 bytes) Download Attachment
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: Bacula 7.4.6 fails to compile on OpenBSD 6.0.

Kern Sibbald
In reply to this post by Stuart Henderson
Thanks.  I have applied it.


On 03/14/2017 10:12 PM, Stuart Henderson wrote:

> On 2017/03/14 20:54, Vanush "Misha" Paturyan wrote:
>> Hello list.
>>
>> I must warn you I am new to the OpenBSD, so maybe I am doing something wrong, but I am unable to compile Bacula 7.4.6 on a freshly installed OpenBSD 6.0. I was following "Regression Testing" instructions when I discovered this. Compilation fails with following:
>>
>> Compiling bnet.c
>> bnet.c: In function 'int set_socket_errno(int)':
>> bnet.c:632: error: 'EPROTO' was not declared in this scope
>> make[1]: *** [Makefile:184: bnet.lo] Error 1
>> make[1]: Leaving directory '/home/misha/bacula/bacula/src/lib'
>>
>>
>>    ====== Error in /home/misha/bacula/bacula/src/lib ======
>>
>>
>> make: *** [Makefile:148: all] Error 1
>>
>> Quick Googleing shows that "EPROTO isn’t defined on OpenBSD", and
>> applying the patch at the end of this email gets rid of the error, but
>> what puzzles me is the fact that according to "git blame" block of
>> code with that line it in was introduced in 2014. Has bacula not been
>> compiled on OpenBSD for this long?
>>
>> Another possible explanation could be that I’m not using tcp_wrappers
>> when compiling bacula (I have a feeling tcp_wrappers have been removed
>> from OpenBSD 6.0, but I cannot confirm it). Were tcp_wrappers hiding the
>> issue somehow?
> The diff you sent matches what was added to OpenBSD ports.
>
> libwrap was removed in OpenBSD 5.6, but that isn't related to this
> EPROTO.
>
> If you don't require the absolute latest version (OpenBSD 6.0 has
> Bacula 7.4.2) you should be able to just pkg_add bacula-server (SD+DIR),
> bacula-client (FD), or bacula-bat.
>
> OpenBSD -current has 7.4.6 with a patch for the ACL/XATTR problem;
> 6.1 will package either that or 7.4.7 if available in time.
>
>> ---
>> diff --git a/bacula/src/lib/bnet.c b/bacula/src/lib/bnet.c
>> index 4eddee2..58e54d8 100644
>> --- a/bacula/src/lib/bnet.c
>> +++ b/bacula/src/lib/bnet.c
>> @@ -629,7 +629,9 @@ int set_socket_errno(int sockstat)
>>         /* Handle errrors from prior connections as EAGAIN */
>>         switch (errno) {
>>            case ENETDOWN:
>> +#ifdef EPROTO
>>            case EPROTO:
>> +#endif
>>            case ENOPROTOOPT:
>>            case EHOSTDOWN:
>>   #ifdef ENONET
>> --
> ------------------------------------------------------------------------------
> Check out the vibrant tech community on one of the world's most
> engaging tech sites, Slashdot.org! http://sdm.link/slashdot
> _______________________________________________
> Bacula-devel mailing list
> [hidden email]
> https://lists.sourceforge.net/lists/listinfo/bacula-devel


------------------------------------------------------------------------------
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot
_______________________________________________
Bacula-devel mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/bacula-devel
Loading...