Страница 1 из 1

Сборка squid & kerberos_ldap_group

Добавлено: 2014-09-24 15:49:22
aktis
Здравствуйте коллеги в 10-ке пытаюсь собитать subj но безуспешно. Немогу вкурить что ему не нравится? Вроде все либы на своих местах...

Код: Выделить всё

Making all in kerberos_ldap_group
support_krb5.cc:119:113: error: format specifies type 'char *' but the argument has type 'krb5_data' (aka '_krb5_data') [-Werror,-Wformat]
        debug((char *) "%s| %s: DEBUG: Keytab entry has realm name: %s\n", LogTime(), PROGRAM, entry.principal->realm);
Making all in LDAP_group
Making all in kerberos_ldap_group
support_krb5.cc:119:113: error: format specifies type 'char *' but the argument has type 'krb5_data' (aka '_krb5_data') [-Werror,-Wformat]
        debug((char *) "%s| %s: DEBUG: Keytab entry has realm name: %s\n", LogTime(), PROGRAM, entry.principal->realm);
                                                                    ~~                                          ^~~~~
../../../compat/debug.h:23:41: note: expanded from macro 'debug'
                         fprintf(stderr,X); \
                                        ^
support_krb5.cc:124:14: error: no matching function for call to 'strcasecmp'
        if (!strcasecmp(domain, entry.principal->realm))
             ^~~~~~~~~~
/usr/include/strings.h:60:6: note: candidate function not viable: no known conversion from 'krb5_data' (aka '_krb5_data') to 'const char *' for 2nd argument
int      strcasecmp(const char *, const char *) __pure;
         ^
support_krb5.cc:230:76: error: no matching function for call to 'strlen'
            service = (char *) xmalloc(strlen("krbtgt") + strlen(domain) + strlen(principal_list[i]->realm) + 3);
                                                                           ^~~~~~
/usr/include/string.h:95:9: note: candidate function not viable: no known conversion from 'krb5_data' (aka '_krb5_data') to 'const char *' for 1st argument
size_t   strlen(const char *) __pure;
         ^
support_krb5.cc:231:67: error: no matching function for call to 'strlen'
            snprintf(service, strlen("krbtgt") + strlen(domain) + strlen(principal_list[i]->realm) + 3, "krbtgt/%s@%s", domain, principal_list[i]->realm);
                                                                  ^~~~~~
/usr/include/string.h:95:9: note: candidate function not viable: no known conversion from 'krb5_data' (aka '_krb5_data') to 'const char *' for 1st argument
size_t   strlen(const char *) __pure;
         ^
4 errors generated.
*** Error code 1

Stop.
make[7]: stopped in /usr/ports/www/squid/work/squid-3.4.8/helpers/external_acl/kerberos_ldap_group
*** Error code 1

Stop.
make[6]: stopped in /usr/ports/www/squid/work/squid-3.4.8/helpers/external_acl/kerberos_ldap_group
*** Error code 1

Stop.
make[5]: stopped in /usr/ports/www/squid/work/squid-3.4.8/helpers/external_acl
*** Error code 1

Stop.
make[4]: stopped in /usr/ports/www/squid/work/squid-3.4.8/helpers
*** Error code 1

Stop.
make[3]: stopped in /usr/ports/www/squid/work/squid-3.4.8
*** Error code 1

Stop.
make[2]: stopped in /usr/ports/www/squid
*** Error code 1

Stop.
make[1]: stopped in /usr/ports/www/squid
*** Error code 1

Stop.
make: stopped in /usr/ports/www/squid
Пинка прошу. Желательно в нужном направлении :)

Re: Сборка squid & kerberos_ldap_group

Добавлено: 2014-09-28 20:15:55
Alex Keda
10 оригинальная или обновляли с чего-то?

Re: Сборка squid & kerberos_ldap_group

Добавлено: 2014-09-29 18:20:59
aktis
10-ка оригинальная начисто ставленная.
Паралельно вопрос, как при сборке сквида из портов указать какой именно керберос использовать, т.к. установлен(security/krb5) ещё и из портов. т.к. с тем что из коробки опенЛДАП не хотел к АД подключаться.

Re: Сборка squid & kerberos_ldap_group

Добавлено: 2014-09-30 16:30:11
Alex Keda
порты последний или релизные?
если последние - обновлён ли весь софт?
--
сам должен раскурить. по крайней мере, раньше сам раскуривал.

Re: Сборка squid & kerberos_ldap_group

Добавлено: 2014-10-06 7:49:07
aktis
Порты последние, софт обновлён.
Раскурить-то раскурил, метод не нравится... В результате взлететь удалось в следующкм случае:
1)Пересобрать мир без встроеного кербероса(хеимдал);
2)Пересобрать всё(рекурсивно?) что звисит от kerb5(из портов);
3)Собрать сквид.

З.Ы. Метод взять "на слабо" конечно хорош :))

Сборка squid & kerberos_ldap_group

Добавлено: 2015-04-01 10:34:14
Mox
aktis писал(а):Порты последние, софт обновлён.
Раскурить-то раскурил, метод не нравится... В результате взлететь удалось в следующкм случае:
1)Пересобрать мир без встроеного кербероса(хеимдал);
2)Пересобрать всё(рекурсивно?) что звисит от kerb5(из портов);
3)Собрать сквид.

З.Ы. Метод взять "на слабо" конечно хорош :))
Какое извращение) Проблема была просто в том, что у вас утсановлен порт security/krb5, а squid пытается собраться с kerberos'ом из базы. Вот в таком случае и возникает проблема. Простой выход - удалить security/krb5 и юзать kerberos из базы. Сложный - ваш.
Вообще это очень давняя бага в самом squid. Надеюсь, что при вливании squid-3.5 в www/squid, которое состоится скоро, эта проблема уже будет пофикшена, т.к. есть активные подвижки в этом направлении. Смотрите http://bugs.squid-cache.org/show_bug.cgi?id=4030