Hi, First, I want to thank you for pound. I use it for several years now, but since I had recently compatibility problems, I try to install pound 3 on Centos 8.1. But without success so far.
I am confused by website that states that : nanomsg This project has largely been superceded by the *nng* <https://github.com/nanomsg/nng> project. Users are encouraged to use *nng* if they are able. 1.1.5, released on October 15, 2018. So I downloaded nanomsg 1.1.5 mbedSSL is in fact mbedTLS. At least, the provided link goes on this one... tcmalloc is still in gperftools-libs and I did not find it anywhere else. pcreposix looks like part of pcre, but impossible to find pcreposix.h in a repository (and I found a 2010 book stating it is replaced by ap_regex.h ???) But after installation of all the listed packages (but what I listed before), I get this: [root@Cent8Pound build]# cmake .. -- The C compiler identification is GNU 8.3.1 -- Check for working C compiler: /usr/bin/cc -- Check for working C compiler: /usr/bin/cc -- works -- Detecting C compiler ABI info -- Detecting C compiler ABI info - done -- Detecting C compile features -- Detecting C compile features - done -- Looking for pthread.h -- Looking for pthread.h - found -- Looking for pthread_create -- Looking for pthread_create - not found -- Check if compiler accepts -pthread -- Check if compiler accepts -pthread - yes -- Found Threads: TRUE -- Looking for 33 include files stdio.h, ..., mbedtls/error.h -- Looking for 33 include files stdio.h, ..., mbedtls/error.h - found -- Looking for include file pcreposix.h -- Looking for include file pcreposix.h - not found -- Looking for include file pcre/pcreposix.h -- Looking for include file pcre/pcreposix.h - not found -- Looking for include file regex.h -- Looking for include file regex.h - found -- Looking for include file stdarg.h -- Looking for include file stdarg.h - found -- Configuring done -- Generating done -- Build files have been written to: /root/Pound-3.0c/build [root@Cent8Pound build]# make Scanning dependencies of target pound [ 16%] Building C object CMakeFiles/pound.dir/src/backend.c.o [ 33%] Building C object CMakeFiles/pound.dir/src/config.c.o [ 50%] Building C object CMakeFiles/pound.dir/src/http.c.o [ 66%] Building C object CMakeFiles/pound.dir/src/pound.c.o [ 83%] Building C object CMakeFiles/pound.dir/src/util.c.o [100%] Linking C executable pound CMakeFiles/pound.dir/src/config.c.o: In function `get_ciphers': config.c:(.text+0x1dcd): undefined reference to `mbedtls_ssl_get_ciphersuite_id' config.c:(.text+0x1f8c): undefined reference to `mbedtls_ssl_get_ciphersuite_id' CMakeFiles/pound.dir/src/config.c.o: In function `get_one': config.c:(.text+0x22d0): undefined reference to `mbedtls_x509_crt_init' config.c:(.text+0x22e6): undefined reference to `mbedtls_x509_crt_parse_file' config.c:(.text+0x2315): undefined reference to `mbedtls_pk_init' config.c:(.text+0x2337): undefined reference to `mbedtls_pk_parse_keyfile' config.c:(.text+0x23e6): undefined reference to `mbedtls_pk_check_pair' CMakeFiles/pound.dir/src/config.c.o: In function `get_https': config.c:(.text+0x30f1): undefined reference to `mbedtls_ssl_config_init' config.c:(.text+0x30ff): undefined reference to `mbedtls_ctr_drbg_random' config.c:(.text+0x3107): undefined reference to `mbedtls_ssl_conf_rng' config.c:(.text+0x3122): undefined reference to `mbedtls_ssl_config_defaults' config.c:(.text+0x3133): undefined reference to `mbedtls_ssl_conf_alpn_protocols' config.c:(.text+0x3144): undefined reference to `mbedtls_ssl_conf_authmode' config.c:(.text+0x369e): undefined reference to `mbedtls_ssl_conf_ciphersuites' config.c:(.text+0x36dd): undefined reference to `mbedtls_ssl_conf_sni' config.c:(.text+0x3704): undefined reference to `mbedtls_ssl_conf_own_cert' config.c:(.text+0x3739): undefined reference to `mbedtls_ssl_conf_ca_chain' config.c:(.text+0x374f): undefined reference to `mbedtls_ssl_conf_read_timeout' CMakeFiles/pound.dir/src/http.c.o: In function `c_read': http.c:(.text+0x1d35): undefined reference to `mbedtls_ssl_read' CMakeFiles/pound.dir/src/http.c.o: In function `c_write': http.c:(.text+0x1f52): undefined reference to `mbedtls_ssl_write' CMakeFiles/pound.dir/src/http.c.o: In function `c_close': http.c:(.text+0x1fd5): undefined reference to `mbedtls_ssl_write' http.c:(.text+0x1fe4): undefined reference to `mbedtls_ssl_close_notify' http.c:(.text+0x2005): undefined reference to `mbedtls_ssl_free' http.c:(.text+0x2011): undefined reference to `mbedtls_net_free' CMakeFiles/pound.dir/src/http.c.o: In function `thr_http': http.c:(.text+0x21da): undefined reference to `mbedtls_net_init' http.c:(.text+0x21f5): undefined reference to `mbedtls_ssl_init' http.c:(.text+0x220f): undefined reference to `mbedtls_ssl_setup' http.c:(.text+0x2223): undefined reference to `mbedtls_net_recv_timeout' http.c:(.text+0x222d): undefined reference to `mbedtls_net_send' http.c:(.text+0x2235): undefined reference to `mbedtls_ssl_set_bio' http.c:(.text+0x2244): undefined reference to `mbedtls_ssl_handshake' http.c:(.text+0x2270): undefined reference to `mbedtls_strerror' http.c:(.text+0x22a9): undefined reference to `mbedtls_ssl_free' http.c:(.text+0x22ca): undefined reference to `mbedtls_ssl_get_peer_cert' http.c:(.text+0x22de): undefined reference to `mbedtls_ssl_get_peer_cert' http.c:(.text+0x22fd): undefined reference to `mbedtls_x509_crt_info' http.c:(.text+0x23bb): undefined reference to `mbedtls_ssl_free' http.c:(.text+0x23ca): undefined reference to `mbedtls_net_free' CMakeFiles/pound.dir/src/pound.c.o: In function `main': pound.c:(.text+0xda): undefined reference to `mbedtls_entropy_init' pound.c:(.text+0xe4): undefined reference to `mbedtls_ctr_drbg_init' pound.c:(.text+0x117): undefined reference to `mbedtls_entropy_func' pound.c:(.text+0x121): undefined reference to `mbedtls_ctr_drbg_seed' CMakeFiles/pound.dir/src/util.c.o: In function `do_sni': util.c:(.text+0x78a): undefined reference to `mbedtls_ssl_set_hs_own_cert' collect2: error: ld returned 1 exit status make[2]: *** [CMakeFiles/pound.dir/build.make:144: pound] Error 1 make[1]: *** [CMakeFiles/Makefile2:68: CMakeFiles/pound.dir/all] Error 2 make: *** [Makefile:84: all] Error 2 NOTA: With centos 7, I got to this level: [root@feux2-pound3 build]# make [ 16%] Linking C executable pound CMakeFiles/pound.dir/src/pound.c.o: In function `main': pound.c:(.text+0xf8): undefined reference to `getentropy' collect2: error: ld returned 1 exit status make[2]: *** [pound] Error 1 make[1]: *** [CMakeFiles/pound.dir/all] Error 2 make: *** [all] Error 2 getentropy looks to be added in a later version of glibc than we have in Centos 7.8 repository. So, what can I do? Could you clarify how to build this version? Probably, it is a basic problem. But I am not expert enough. thank you for your help, Christian COMMARMOND Le mar. 5 mai 2020 à 22:04, Carsten Leonhardt <l...@debian.org> a écrit : > Hi Robert, > > I found more things to report: > > The setuid call needs to come after the setgid call, otherwise the right > to change gid is lost when the uid is changed away from root. So the > lines 117-121 and 122-126 need to be switched in src/pound.c. > > > With the configuration below, pound doesn't answer requests but uses > 100% CPU. http://localhost:80 works, but http://localhost:8080 doesn't. > > Regards, > > Carsten > > ------8<-----8<------8<------ > Global: > User: "_pound" > Group: "_pound" > > Backends: > - &be > Address: 127.0.0.1 > Port: 80 > > HTTPListeners: > - Address: 127.0.0.1 > Port: 8080 > Services: > - Backends: > - *be > > HTTPSListeners: > ------8<-----8<------8<------ > > -- > pound mailing list > pound@apsis.ch > https://admin.hostpoint.ch/mailman/listinfo/pound_apsis.ch >
-- pound mailing list pound@apsis.ch https://admin.hostpoint.ch/mailman/listinfo/pound_apsis.ch