From 793a9145004d5746c73b0fd0a1979d70970990d7 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=D0=A5=D0=B8=D1=80=D0=B5=D1=86=D0=BA=D0=B8=D0=B9=20=D0=9C?= =?UTF-8?q?=D0=B8=D1=85=D0=B0=D0=B8=D0=BB?= Date: Fri, 30 Mar 2012 11:18:15 +0400 Subject: [PATCH] Fix work with net interfaces on calculate-server. --- sys-apps/calculate-lib/Manifest | 2 + .../calculate-lib-2.1.11-r1.ebuild | 30 +++ .../calculate-lib-2.2.11-fix_getip.patch | 161 +++++++++++++++ sys-apps/calculate-server/Manifest | 2 + .../calculate-server-2.1.15-r5.ebuild | 188 ++++++++++++++++++ .../calculate-server-2.1.15-fix_getip.patch | 46 +++++ sys-apps/calculate-utilities/Manifest | 1 + .../calculate-utilities-2.2.28-r9.ebuild | 36 ++++ 8 files changed, 466 insertions(+) create mode 100644 sys-apps/calculate-lib/calculate-lib-2.1.11-r1.ebuild create mode 100644 sys-apps/calculate-lib/files/calculate-lib-2.2.11-fix_getip.patch create mode 100644 sys-apps/calculate-server/calculate-server-2.1.15-r5.ebuild create mode 100644 sys-apps/calculate-server/files/calculate-server-2.1.15-fix_getip.patch create mode 100644 sys-apps/calculate-utilities/calculate-utilities-2.2.28-r9.ebuild diff --git a/sys-apps/calculate-lib/Manifest b/sys-apps/calculate-lib/Manifest index d0b9116c7..1beeb17d7 100644 --- a/sys-apps/calculate-lib/Manifest +++ b/sys-apps/calculate-lib/Manifest @@ -1,3 +1,4 @@ +AUX calculate-lib-2.2.11-fix_getip.patch 5581 RMD160 c4762feab11c13ddf0eb6ef986225f4ac93ba0ca SHA1 3b58d63bcbf10c9251c588c1aaafeda8dc8fbdc5 SHA256 caa94e4090381bfb5f88a669e0210db2fd2d29348a3ffa4f95db4e9d2b58533f AUX calculate-lib-2.2.24-r2.patch 980 RMD160 416217331dd555f3aedbb808df8bc1cfaeeb0b17 SHA1 5c6c38e73b79d6cf1d7212228bf8966d06a950aa SHA256 16e151beb50f88a1a3f5a5c1c86e0e46bd3a5ca7e98e566b3b9039160e337451 AUX calculate-lib-2.2.25-r1.patch 1325 RMD160 59472305420c21679c398e5400e1b352695f3d68 SHA1 3f229e57fc92e62c7ae75fb8df1d9b258dba422e SHA256 8db8bd24edccf9274b8fc926376b219e517813970c6f6f31bb284c6a485adc91 AUX calculate-lib-2.2.26-fix_clt.patch 1373 RMD160 953feae02ad6b5e2414fb85c29634d0852730533 SHA1 eb31b48cc8e44aa722593eb025ed0e10e98066d8 SHA256 a147ef7cc41f15b6fc877dbbec271cb5da761042da1903ef6907539ace614625 @@ -16,6 +17,7 @@ DIST calculate-lib-2.2.25.tar.bz2 109844 RMD160 a7ae69d929a1c73394f1ea03fb3c8f21 DIST calculate-lib-2.2.26.tar.bz2 109841 RMD160 b1fb182f318cefd237591491aff15bbdcc83c30e SHA1 aa06f3599ae552eb6f74e4322246eccdf4a1c27f SHA256 acf69c80e0873d99247cc13c2bd73b081bce4aea2e8a5512b7b329c8d3ec75dc DIST calculate-lib-2.2.27.tar.bz2 110011 RMD160 79a3b0b671d52671daffccbca5e1d73ae33d8346 SHA1 20321b15cbb0665220a1b367ab86e839df1ef13f SHA256 2e20da183dc02fb78e5518926b0005738298128373c2a45b88b54985c7120825 DIST calculate-lib-2.2.28.tar.bz2 110324 RMD160 e008b3524d61c0552d994da244a4c46ce8ec08f2 SHA1 3fa0c99d45f693e37700a8fa2e540bfe38a09a54 SHA256 0e22220a309c4b7e6909993bd5140cda9121dcfdf41a2bd90c6ca3b893a9e3e3 +EBUILD calculate-lib-2.1.11-r1.ebuild 728 RMD160 0be6dc48b819a1320d83b8a342ea6ae07da6fc2d SHA1 00db981362f165d0239305a44fbc0392dbbb71c2 SHA256 3143cca775d4fe086ef7700c4ed25ebe7db49cbe660a0a7c4017ee1ac96b1fd6 EBUILD calculate-lib-2.1.11.ebuild 585 RMD160 742e544ac2f98074ac2cf29227c931e213cff023 SHA1 64e098b169359f3106c0e360261cb5fbb99602f4 SHA256 501467786f3943c8fcf47b787b9582c8aa4f8dfec9e664d784f098b6a3702ba7 EBUILD calculate-lib-2.1.8-r1.ebuild 730 RMD160 a207fbb024eaedeff679eb052b6ca04f289f914f SHA1 68c72562dc796958dd83dc4c59b2444678180b52 SHA256 b6a343b0f4d9e557ca42f5505c56c2373c04d1fa98191cf03b15cd0cdd0bb603 EBUILD calculate-lib-2.1.8-r2.ebuild 810 RMD160 ff412a1e0f7ea1ec3493738e23e3e7ec9334d49d SHA1 251a1fa961d07ef51c1c29ff930f73839b838bc8 SHA256 9cb04ff79362d497c9ac6a52353933683201337cb50104ab7a0b70ba6fdb04c1 diff --git a/sys-apps/calculate-lib/calculate-lib-2.1.11-r1.ebuild b/sys-apps/calculate-lib/calculate-lib-2.1.11-r1.ebuild new file mode 100644 index 000000000..72902243d --- /dev/null +++ b/sys-apps/calculate-lib/calculate-lib-2.1.11-r1.ebuild @@ -0,0 +1,30 @@ +# Copyright 1999-2011 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: $ + +EAPI="3" + +inherit distutils eutils + +SRC_URI="ftp://ftp.calculate.ru/pub/calculate/calculate2/${PN}/${P}.tar.bz2" + +DESCRIPTION="The library for Calculate 2" +HOMEPAGE="http://www.calculate-linux.org/main/en/calculate2" +LICENSE="Apache-2.0" +SLOT="0" +KEYWORDS="amd64 x86" +IUSE="" +DEPEND="!=dev-lang/python-2.5.2 + >=dev-python/python-ldap-2.0[ssl] + >=dev-python/pyxml-0.8" +RDEPEND="${DEPEND}" + +src_unpack() { + unpack "${A}" + cd "${S}" + + # fix get ip and mac without ifconfig + epatch "${FILESDIR}/calculate-lib-2.2.11-fix_getip.patch" +} diff --git a/sys-apps/calculate-lib/files/calculate-lib-2.2.11-fix_getip.patch b/sys-apps/calculate-lib/files/calculate-lib-2.2.11-fix_getip.patch new file mode 100644 index 000000000..7535bbaa0 --- /dev/null +++ b/sys-apps/calculate-lib/files/calculate-lib-2.2.11-fix_getip.patch @@ -0,0 +1,161 @@ +diff --git a/pym/cl_fill.py b/pym/cl_fill.py +index c5dea91..e86343d 100644 +--- a/pym/cl_fill.py ++++ b/pym/cl_fill.py +@@ -129,57 +129,22 @@ class fillVars(object, cl_base.glob_attr): + # все ip + def get_os_net_ip(self): + """все ip компьютера, разделитель запятая""" +- IPs = [] +- netInterfaces=cl_utils.getdirlist("/sys/class/net/") +- for i in netInterfaces: +- res = self._runos("/sbin/ifconfig %s"%i) +- if not res: +- break +- for line in res: +- searchIP = re.search('addr:([0-9\.]+).+Bcast:', line) +- if searchIP: +- # ip адрес +- ip = searchIP.groups()[0] +- IPs.append(ip) +- return ",".join(IPs) ++ return ",".join(map(cl_utils.getIp, ++ cl_utils.getInterfaces())) + + # Разрешенные сети (в данном случае все сети) + def get_os_net_allow(self): + """Разрешенные сети разделитель запятая""" +- +- def getNet(ip, mask): +- """По ip и маске получаем сеть""" +- octetsMult = (0x1, 0x100, 0x10000, 0x1000000) +- octetsIp = map(lambda x: int(x), ip.split(".")) +- octetsMask = map(lambda x: int(x), mask.split(".")) +- ipNumb = 0 +- for i in octetsMult: +- ipNumb += octetsIp.pop()*i +- maskNumb = 0 +- for i in octetsMult: +- maskNumb += octetsMask.pop()*i +- startIpNumber = maskNumb&ipNumb +- x = startIpNumber +- nMask = lambda y: len(filter(lambda x: y >> x &1 ,range(32))) +- return "%s.%s.%s.%s/%s"\ +- %(x>>24, x>>16&255, x>>8&255, x&255, nMask(maskNumb)) +- + networks=[] +- netInterfaces=cl_utils.getdirlist("/sys/class/net/") +- flagError = False ++ netInterfaces=cl_utils.getInterfaces() + for i in netInterfaces: +- res = self._runos("/sbin/ifconfig %s"%i) +- if not res: +- flagError = True +- break +- for j in res: +- s_ip=re.search('addr:([0-9\.]+).+Bcast:.+Mask:([0-9\.]+)' ,j) +- if s_ip: +- ip, mask = s_ip.groups() +- networks.append(getNet(ip, mask)) +- if flagError: +- return "" +- return ",".join(networks) ++ ipaddr, mask = cl_utils.getIp(i), \ ++ cl_utils.cidrToMask(cl_utils.getMask(i)) ++ if ipaddr and mask: ++ networks.append(cl_utils.getIpNet(ipaddr, mask)) ++ else: ++ networks.append("") ++ return ",".join(filter(lambda x:x,networks)) + + def get_os_locale_locale(self): + """локаль (прим: ru_RU.UTF-8)""" +diff --git a/pym/cl_utils.py b/pym/cl_utils.py +index 195d4d5..e57533b 100644 +--- a/pym/cl_utils.py ++++ b/pym/cl_utils.py +@@ -21,6 +21,9 @@ from re import search, compile, S + import os + import types + import subprocess ++import socket ++import struct ++import fcntl + + def getdirlist(s_path): + #Получить список директорий по указаному пути +@@ -508,3 +511,74 @@ def _toUNICODE(val): + return val + else: + return str(val).decode('UTF-8') ++ ++SYSFS_NET_PATH = "/sys/class/net" ++ ++# From linux/sockios.h ++SIOCGIFADDR = 0x8915 ++SIOCGIFNETMASK = 0x891B ++SIOCGIFHWADDR = 0x8927 ++ ++def getInterfaces(): ++ """ ++ Get available interfaces (discard which hasn't device) ++ """ ++ try: ++ return filter(lambda x:os.path.exists( ++ path.join(SYSFS_NET_PATH,x,"device")), ++ os.listdir(SYSFS_NET_PATH)) ++ except: ++ return [] ++ ++def getIp(iface): ++ sockfd = socket.socket(socket.AF_INET, socket.SOCK_DGRAM) ++ ifreq = struct.pack('16sH14s', iface, socket.AF_INET, '\x00'*14) ++ try: ++ res = fcntl.ioctl(sockfd, SIOCGIFADDR, ifreq) ++ except IOError: ++ return "" ++ finally: ++ sockfd.close() ++ ip = struct.unpack('16sH2x4s8x', res)[2] ++ return socket.inet_ntoa(ip) ++ ++def getMask(iface): ++ """ ++ Get mask for interface ++ """ ++ sockfd = socket.socket(socket.AF_INET, socket.SOCK_DGRAM) ++ ifreq = struct.pack('16sH14s', iface, socket.AF_INET, '\x00'*14) ++ try: ++ res = fcntl.ioctl(sockfd, SIOCGIFNETMASK, ifreq) ++ except IOError: ++ return 0 ++ finally: ++ sockfd.close() ++ netmask = socket.ntohl(struct.unpack('16sH2xI8x', res)[2]) ++ return 32 - int(math.log(ctypes.c_uint32(~netmask).value + 1, 2)) ++ ++def getMac(iface): ++ """ ++ Get mac for interface ++ """ ++ sockfd = socket.socket(socket.AF_INET, socket.SOCK_DGRAM) ++ ifreq = struct.pack('16sH14s', iface, socket.AF_UNIX, '\x00'*14) ++ res = fcntl.ioctl(sockfd, SIOCGIFHWADDR, ifreq) ++ address = struct.unpack('16sH14s', res)[2] ++ mac = struct.unpack('6B8x', address) ++ sockfd.close() ++ return ":".join(['%02X' % i for i in mac]) ++ ++def intIpToStrIp(addr): ++ """Convert ip specified by integer to string""" ++ return "{0}.{1}.{2}.{3}".format( ++ addr>>24,(addr>>16)&0xff,(addr>>8)&0xff,addr&0xff) ++ ++def maskToCidr(mask): ++ """Convert mask specified by str to net""" ++ mask = strIpToIntIp(mask) ++ return 32-int(math.log(((~mask) & 0xffffffff)+1,2)) ++ ++def cidrToMask(cidr): ++ """Convert net to mask specified by str""" ++ return intIpToStrIp((2**cidr-1)<<(32-cidr)) diff --git a/sys-apps/calculate-server/Manifest b/sys-apps/calculate-server/Manifest index 4ab36d48c..41a64aec4 100644 --- a/sys-apps/calculate-server/Manifest +++ b/sys-apps/calculate-server/Manifest @@ -6,6 +6,7 @@ AUX calculate-server-2.1.14-fix_add_dns_rec.patch 649 RMD160 dbe869d596486428d10 AUX calculate-server-2.1.14-fix_dovecot.patch 502 RMD160 c7d4c76dc49a3894e7534572643e321696ae5a58 SHA1 1d62d3b5c9a5628cbb133bc615f8af06d6e844b5 SHA256 4f9ed8f74dd50244f1b6ac5f8a1b991a0f973fb2c05eac23e0509c2d31458baa AUX calculate-server-2.1.14-remote_distfiles.patch 892 RMD160 8d6a74fa561dcb35749f823103231890a93572f5 SHA1 b9aacc5e6fa755eb12fed2f4cb34d8a6c0765a01 SHA256 3f01a01874c38e81a86940255b55fa250a2c0f85726fdd6974b4b9e3ac1bdc34 AUX calculate-server-2.1.14-rename_param.patch 1980 RMD160 2d5e449e1da1f9dc7f3c2ddf11125842309675c4 SHA1 75aab35370256629d82eca9347d5d1fc07706b2d SHA256 d09e00c52625b4320a753cc519250d396f92742181af2a6f7a95b060812cf99d +AUX calculate-server-2.1.15-fix_getip.patch 1703 RMD160 ccc343de339c54aab6c0922c555c2de64c0bcc53 SHA1 33c548a87643ddc08955ad4a671649a31ee81038 SHA256 aabc9c9b935b1804ea3f375d0868d0954ca1c7925b64930f3f8d460d1815c13d AUX calculate-server-2.1.15-fix_proftpd.patch 920 RMD160 50f982911022ed4f063c386a8811e2f95ecc95ce SHA1 2cff58b77a28c823fdfc9401f3c92eefb4dd21e8 SHA256 42b8969e61bd4456812db8f164076b00d35f5f21daecf0d9dc89486738ce2a80 DIST calculate-server-2.1.13.tar.bz2 157717 RMD160 42d15a964a8c94774003d89ddc6bd834d20b1d5d SHA1 08e47e64aa8173b76a73693346d465ed62ac2ea1 SHA256 c748759f792c21dd28f2659bfeccf2a707c08f36a5d49766ceb6b922a98e930e DIST calculate-server-2.1.14.tar.bz2 167957 RMD160 a2d349f1cd6a6107f7e32b79b5189e5a0530b440 SHA1 3f23fb09fb7b67f14d48c8ffb3edc03e5eef95a9 SHA256 3c5b4de78df05c545884995d50fd5b8b53c6d9742d91e699d8fd1d9020168e05 @@ -23,6 +24,7 @@ EBUILD calculate-server-2.1.14-r6.ebuild 5589 RMD160 dcb93ec7edc9f02e2b64ea93367 EBUILD calculate-server-2.1.14.ebuild 4966 RMD160 0a71a8217e53bec9c87669713e3007a5097e9b19 SHA1 6c284957f2841655facc4301cc7a9945d5f95876 SHA256 a7d071a4a1b10e1a03ebec2509be004ddcad0831976a05e88aa2ebbbee4fa986 EBUILD calculate-server-2.1.15-r1.ebuild 5297 RMD160 3c2e0ef3aa437dd622751b77ee54de386688f59d SHA1 f3992918608d04aad76ce96fa4f984f4fa321394 SHA256 3c580af7a0259bf15ad59ec97d34f6affc6ffc3258439e8d8c49eeb730104c98 EBUILD calculate-server-2.1.15-r4.ebuild 5425 RMD160 ca258dad95400b26d37cb526ce55bd8ddf55b071 SHA1 5c66d2fc8420b7ea45feed339ea5a1a0312c640a SHA256 7ab65757f9f6c19d943b95cf11e0b60cd08e58c2cde04cfb1f39688de63e1778 +EBUILD calculate-server-2.1.15-r5.ebuild 5520 RMD160 e644c3bdeb23cc18f41da6a3bf6d9034cb58da05 SHA1 4c17444ebc0f65bb31d24759791fa60be38bc80c SHA256 d6d918f82ee3b44df6330e9d0c8b56aff433cfaa1d31f4d510116c98c05d7c69 EBUILD calculate-server-9999.ebuild 1037 RMD160 e064aafa6280bde8c3eee916ff18c53ec15155b9 SHA1 8e12835d6c5ddcfee9abb20f2c7608a58338270d SHA256 9990fc856334757de45a58372b6b2d0e727e621697cd90abec72bc3388907914 MISC ChangeLog 8789 RMD160 a43c183b62b01668f738afeefa6bc30a9d2f7c7c SHA1 5b7a05dd2c612a98b5b336a47e9a509d1aa4ea40 SHA256 e7be850a78dd947309d832070f76b141bbd57a2ba96d679f8754b9f596a6509f MISC metadata.xml 286 RMD160 e243725ec1a1302cab0d0efee76a4a926e855916 SHA1 6071aa604ea5a1ba8e1772e8f37a24f26b893d8d SHA256 aab7ddde310df96da76277d5ae340a4b0926bec3b354bfb2fea3288081036d74 diff --git a/sys-apps/calculate-server/calculate-server-2.1.15-r5.ebuild b/sys-apps/calculate-server/calculate-server-2.1.15-r5.ebuild new file mode 100644 index 000000000..58e570631 --- /dev/null +++ b/sys-apps/calculate-server/calculate-server-2.1.15-r5.ebuild @@ -0,0 +1,188 @@ +# Copyright 1999-2011 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: $ + +EAPI="3" + +inherit distutils eutils + +SRC_URI="ftp://ftp.calculate.ru/pub/calculate/calculate2/${PN}/${P}.tar.bz2" + +DESCRIPTION="The program for configuring services Linux" +HOMEPAGE="http://www.calculate-linux.org/main/en/calculate2" +LICENSE="Apache-2.0" +SLOT="0" +KEYWORDS="amd64 x86" + +IUSE="calculate_nomail +calculate_nodhcp +calculate_noftp +calculate_nojabber +calculate_nonamed +calculate_nosamba +calculate_noproxy" + +DEPEND="=sys-apps/calculate-lib-2.1.11-r1 + >=net-nds/openldap-2.3[-minimal] + >=sys-auth/pam_ldap-180[ssl] + >=sys-auth/nss_ldap-239 + !calculate_nosamba? ( + >=net-fs/samba-3.4.6[acl,client,cups,ldap,netapi,pam,server,smbclient] + =net-mail/dovecot-1.2.0[ldap,pam,ssl] + ) + >=mail-filter/procmail-3.22 + dev-python/pymilter + >=mail-mta/postfix-2.2[ldap,pam,ssl] + ) + !calculate_noftp? ( + || ( =net-ftp/proftpd-1.3.3[-acl,ident,ldap,ncurses,nls,pam,ssl,tcpd] + ) + ) + !calculate_nojabber? ( + >=net-im/ejabberd-2.1.8[mod_pubsub] + >=media-gfx/imagemagick-6.6 + ) + !calculate_nonamed? ( >=net-dns/bind-9.6.1_p1[sdb-ldap] ) + !calculate_noproxy? ( >=net-proxy/squid-3.0.14[ldap,pam,ssl] ) + !calculate_nodhcp? ( >=net-misc/dhcp-3.1.2_p1 )" + +RDEPEND="${DEPEND}" + +src_unpack() { + unpack "${A}" + cd "${S}" + + # fix for proftpd + epatch "${FILESDIR}/calculate-server-2.1.15-fix_proftpd.patch" + # fix getip without ifconfig + epatch "${FILESDIR}/calculate-server-2.1.15-fix_getip.patch" +} + +pkg_postinst() { + if [ -d /var/calculate/server-data/mail/imap ] || \ + [ -d /var/calculate/server-data/samba/win/profiles ] || \ + [ -d /var/calculate/server-data/samba/unix/profiles ] || \ + [ -d /var/calculate/server-data/samba/win/netlogon ]; + then + ewarn "Data found in directories of previous version calculate-server" + fi + + if [ -d /var/calculate/server-data/mail/imap ]; + then + if ! [ -d /var/calculate/server-data/mail~ ]; + then + if mv /var/calculate/server-data/mail/imap \ + /var/calculate/server-data/mail~ && \ + rmdir /var/calculate/server-data/mail && \ + mv /var/calculate/server-data/mail~ \ + /var/calculate/server-data/mail; + then + ewarn + ewarn "Data from /var/calculate/server-data/mail/imap" + ewarn "was moved to /var/calculate/server-data/mail" + MAILUPDATE="TRUE" + fi + fi + if ! [ "${MAILUPDATE}" == "TRUE" ]; + then + eerror "Cannot move /var/calculate/server-data/mail/imap" + eerror "Please manualy move /var/calculate/server-data/mail/imap" + eerror "to /var/calculate/server-data/mail" + fi + fi + + if [ -d /var/calculate/server-data/samba/win/profiles ]; + then + SAMBAUPDATE="" + if ! [ -d /var/calculate/server-data/samba/profiles/win ]; + then + if mkdir -p /var/calculate/server-data/samba/profiles && \ + mv /var/calculate/server-data/samba/win/profiles \ + /var/calculate/server-data/samba/profiles/win; + then + ewarn + ewarn "Data from /var/calculate/server-data/samba/win/profiles" + ewarn "was moved to /var/calculate/server-data/samba/profiles/win" + SAMBAUPDATE="TRUE" + fi + fi + if ! [ "${SAMBAUPDATE}" == "TRUE" ]; + then + eerror "Cannot move /var/calculate/server-data/samba/win/profiles" + eerror "Please manualy move " + eerror "/var/calculate/server-data/samba/win/profiles" + eerror "to /var/calculate/server-data/samba/profiles/win" + fi + fi + + if [ -d /var/calculate/server-data/samba/unix/profiles ]; \ + then + SAMBAUPDATE="" + if ! [ -d /var/calculate/server-data/samba/profiles/unix ]; + then + if mkdir -p /var/calculate/server-data/samba/profiles && \ + mv -f /var/calculate/server-data/samba/unix/profiles \ + /var/calculate/server-data/samba/profiles/unix; + then + rmdir /var/calculate/server-data/samba/unix + ewarn + ewarn "Data from /var/calculate/server-data/samba/unix/profiles" + ewarn "was moved to /var/calculate/server-data/samba/profiles/unix" + SAMBAUPDATE="TRUE" + fi + fi + if ! [ "${SAMBAUPDATE}" == "TRUE" ]; + then + eerror "Cannot move /var/calculate/server-data/samba/unix/profiles" + eerror "Please manualy move " + eerror "/var/calculate/server-data/samba/unix/profiles" + eerror "to /var/calculate/server-data/samba/profiles/unix" + fi + fi + + if [ -d /var/calculate/server-data/samba/win/netlogon ]; + then + SAMBAUPDATE="" + if ! [ -d /var/calculate/server-data/samba/netlogon ]; + then + if mv -f /var/calculate/server-data/samba/win/netlogon \ + /var/calculate/server-data/samba/netlogon; + then + rmdir /var/calculate/server-data/samba/win + ewarn + ewarn "Data form /var/calculate/server-data/samba/win/netlogon" + ewarn "was moved to /var/calculate/server-data/samba/netlogon" + SAMBAUPDATE="TRUE" + fi + fi + if ! [ "${SAMBAUPDATE}" == "TRUE" ]; + then + eerror "Cannot move /var/calculate/server-data/samba/win/netlogon" + eerror "Please manualy move " + eerror "/var/calculate/server-data/samba/win/netlogon" + eerror "/var/calculate/server-data/samba/netlogon" + fi + fi + + if [ "${MAILUPDATE}" == "TRUE" ]; + then + ewarn + ewarn "Please update mail service by the command:" + ewarn "\tcl-update mail" + fi + if [ "${SAMBAUPDATE}" == "TRUE" ]; + then + ewarn + ewarn "Please update samba service by the command:" + ewarn "\tcl-update samba" + fi + + ewarn + ewarn "WARNING!!! If you have the samba service, then update it by the command:" + ewarn "\tcl-update samba" +} diff --git a/sys-apps/calculate-server/files/calculate-server-2.1.15-fix_getip.patch b/sys-apps/calculate-server/files/calculate-server-2.1.15-fix_getip.patch new file mode 100644 index 000000000..84e1a3e15 --- /dev/null +++ b/sys-apps/calculate-server/files/calculate-server-2.1.15-fix_getip.patch @@ -0,0 +1,46 @@ +commit 29425ac4e201ff5702d8d7adea55028ce3d2749b +Author: Хирецкий Михаил +Date: Fri Mar 30 11:09:57 2012 +0400 + + Получение MAC и IP адресов без утилиты ifconfig. + +diff --git a/pym/cl_ldap.py b/pym/cl_ldap.py +index 385ccdf..e286eda 100644 +--- a/pym/cl_ldap.py ++++ b/pym/cl_ldap.py +@@ -21486,30 +21486,11 @@ network %s")%net) + + def getMacInIp(self, ip): + """Находит mac адрес по ip адресу""" +- netInterfaces=cl_utils.getdirlist("/sys/class/net/") +- flagFound = False +- for i in netInterfaces: +- execStr = "/sbin/ifconfig %s"%i +- res = self.execProg(execStr, None, False) +- if not res: +- break +- mac = "" +- for line in res: +- sMac = re.search('HWaddr\s+(([0-9a-f]{2}:){5}[0-9a-f]{2})',\ +- line) +- if sMac: +- # mac адрес +- mac = sMac.groups()[0] +- continue +- sIP = re.search('addr:([0-9\.]+).+Bcast:', line) +- if sIP: +- Ip = sIP.groups()[0] +- if ip == Ip and mac: +- flagFound = True +- break +- if not flagFound: +- mac = "" +- return mac ++ for iface in cl_utils.getInterfaces(): ++ mac,iface_ip = cl_utils.getMac(iface),cl_utils.getIp(iface) ++ if iface_ip == ip and mac: ++ return mac.lower() ++ return "" + + def setupDhcpServer(self, options): + """Начальная настройка DHCP сервиса""" diff --git a/sys-apps/calculate-utilities/Manifest b/sys-apps/calculate-utilities/Manifest index b747593aa..3a185096e 100644 --- a/sys-apps/calculate-utilities/Manifest +++ b/sys-apps/calculate-utilities/Manifest @@ -66,6 +66,7 @@ EBUILD calculate-utilities-2.2.28-r5.ebuild 863 RMD160 2022ed0df09f1718cb2ad43f8 EBUILD calculate-utilities-2.2.28-r6.ebuild 866 RMD160 be47823324a2b30f1de03d7ec776f9523056603a SHA1 bcbc9fde4aced76bb81b6390a3629a40a739a307 SHA256 f75d9357e3e0c02bce685a23d8b939ddd23c4ba02290179636b5bdb55ae51ba7 EBUILD calculate-utilities-2.2.28-r7.ebuild 866 RMD160 48a1042dfca36442702652e267b0dbd8056fe9f2 SHA1 25dc12ff793e62af8bf92473c5c9150aae4bf9cc SHA256 f55a8e90fd9fb20c9ab2be4a786f689e71fb68e667a0f4fc7d252acbe99b79d4 EBUILD calculate-utilities-2.2.28-r8.ebuild 866 RMD160 bfe50e2e40bd15bef44e1b2686643e1d7795984a SHA1 b918c61ae0a7cfe273059b55ba08acd50ef2ef42 SHA256 ef74cb39e027d173f62fa27f87b62a53281f9adb3981a14f3b7b29d0afa29833 +EBUILD calculate-utilities-2.2.28-r9.ebuild 866 RMD160 e81f60cfecd40b23fd2cf6584dc694aee2f95f47 SHA1 1f82270046de6a388077cf2d0e86bbbe15c9ebb6 SHA256 46656df11cb4e4334f24144f5273dc90fa005e6aae2eeae6cb6f589eeb17bfdd EBUILD calculate-utilities-2.2.28.ebuild 854 RMD160 4a1efb9b471b17cf02f033887b544a5c4e792aae SHA1 e51eed091e5928ffec22f66271fce95128ca34b8 SHA256 dfc566dcecc232a52add5528e20a814690d0080bdb1eff405bf774ce08770f59 EBUILD calculate-utilities-2.2.9999.ebuild 842 RMD160 f2c0fdc1068614b71a37f2226dcde4883ebd2876 SHA1 99f673a52934f552589baf6d12ed9bffc03b8ebd SHA256 56d97b7d2ce11d23b25d9036b4e2ee196b547ce1d11b0cc349a8205515b66bf1 EBUILD calculate-utilities-3.0.9999.ebuild 441 RMD160 ec17f871ec70a322cff866048e50c150931e0e95 SHA1 d0e036ba01e6a71ad14e6f3e6735bbd0f325df99 SHA256 30c6cd4ce478016cb75458314ea4e745ccb1501be33f14c3a2593d9d0e670c9c diff --git a/sys-apps/calculate-utilities/calculate-utilities-2.2.28-r9.ebuild b/sys-apps/calculate-utilities/calculate-utilities-2.2.28-r9.ebuild new file mode 100644 index 000000000..4adc0c09e --- /dev/null +++ b/sys-apps/calculate-utilities/calculate-utilities-2.2.28-r9.ebuild @@ -0,0 +1,36 @@ +# Copyright 1999-2012 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: $ + +EAPI=3 + +DESCRIPTION="Calculate Utilities meta package" +HOMEPAGE="http://www.calculate-linux.org/main/en/calculate2" +SRC_URI="" + +LICENSE="Apache-2.0" +SLOT="0" +KEYWORDS="amd64 x86" +IUSE=" +cl_assemble +cl_builder +cl_client +cl_desktop +cl_installgui +cl_server +" + +RDEPEND="${RDEPEND} + !sys-apps/calculate-templates + =sys-apps/calculate-install-2.2.28-r1 + =sys-apps/calculate-lib-2.2.28-r5 + =sys-apps/calculate-i18n-2.2.28 + + cl_assemble? ( =sys-apps/calculate-assemble-2.2.28-r1 ) + cl_builder? ( =sys-apps/calculate-builder-2.2.28 ) + cl_client? ( =sys-apps/calculate-client-2.2.28-r1 ) + cl_desktop? ( =sys-apps/calculate-desktop-2.2.28 ) + cl_installgui? ( =app-misc/calculate-install-gui-2.2.28 ) + + cl_server? ( =sys-apps/calculate-server-2.1.15-r5 ) +"