21020796 Add "RO" to res1 field of auth_attr.d files in ptp
21020163 html help files in PTP for RBAC profiles and authorizations must go
21108112 Add support for Hybrid mode
21108146 Example for setprop config/use_hw should use true in man page
--- a/components/ptp/Solaris/SmfPTPStates.html Wed Jul 01 08:38:58 2015 -0700
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,36 +0,0 @@
-<HTML>
-<!--
- CDDL HEADER START
-
- The contents of this file are subject to the terms of the
- Common Development and Distribution License (the "License").
- You may not use this file except in compliance with the License.
-
- You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
- or http://www.opensolaris.org/os/licensing.
- See the License for the specific language governing permissions
- and limitations under the License.
-
- When distributing Covered Code, include this CDDL HEADER in each
- file and include the License file at usr/src/OPENSOLARIS.LICENSE.
- If applicable, add the following below this CDDL HEADER, with the
- fields enclosed by brackets "[]" replaced with your own identifying
- information: Portions Copyright [yyyy] [name of copyright owner]
-
- CDDL HEADER END
-
- Copyright (c) 2013, Oracle and/or its affiliates. All rights reserved.
--->
-<!--
- <META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=iso-8859-1">
--->
-<BODY>
-When <em>Manage PTP Service States</em> is in the Authorizations Include
-column, it grants the authorization to enable, disable, or restart the
-ptp daemon.
-<p>
-If <em>Manage PTP Service States</em> is grayed, then you are not entitled to
-Add or Remove this authorization.
-<BR>
-</BODY>
-</HTML>
--- a/components/ptp/Solaris/SmfValuePTP.html Wed Jul 01 08:38:58 2015 -0700
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,35 +0,0 @@
-<HTML>
-<!--
- CDDL HEADER START
-
- The contents of this file are subject to the terms of the
- Common Development and Distribution License (the "License").
- You may not use this file except in compliance with the License.
-
- You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
- or http://www.opensolaris.org/os/licensing.
- See the License for the specific language governing permissions
- and limitations under the License.
-
- When distributing Covered Code, include this CDDL HEADER in each
- file and include the License file at usr/src/OPENSOLARIS.LICENSE.
- If applicable, add the following below this CDDL HEADER, with the
- fields enclosed by brackets "[]" replaced with your own identifying
- information: Portions Copyright [yyyy] [name of copyright owner]
-
- CDDL HEADER END
-
- Copyright (c) 2013, Oracle and/or its affiliates. All rights reserved.
--->
-<!--
- <META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=iso-8859-1">
--->
-<BODY>
-When <em>Value PTP Properties</em> is in the Authorizations Included
-column, it grants the authorization to change PTP service property values.
-<P>
-If <em>Value PTP Properties</em> is grayed, then you are not entitled to
-Add or Remove this authorization.
-<BR>
-</BODY>
-</HTML>
--- a/components/ptp/Solaris/auth_attr Wed Jul 01 08:38:58 2015 -0700
+++ b/components/ptp/Solaris/auth_attr Wed Jul 01 09:07:33 2015 -0700
@@ -1,2 +1,2 @@
-solaris.smf.manage.ptp:::Manage PTP service states::help=SmfPTPStates.html
-solaris.smf.value.ptp:::Change PTP value properties::help=SmfValuePTP.html
+solaris.smf.manage.ptp:RO::Manage PTP service states::
+solaris.smf.value.ptp:RO::Change PTP value properties::
--- a/components/ptp/patches/00-sol_sf_patch_over_community_edition.patch Wed Jul 01 08:38:58 2015 -0700
+++ b/components/ptp/patches/00-sol_sf_patch_over_community_edition.patch Wed Jul 01 09:07:33 2015 -0700
@@ -10495,7 +10495,7 @@
+
+First configure the service to use the PTP hardware -
+#svccfg -s svc:/network/ptp:default \\
-+ setprop config/use_hw=yes
++ setprop config/use_hw=true
+
+.fi
+Then refresh the service, assuming it is enabled and online
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/components/ptp/patches/03-add_hybrid_mode.patch Wed Jul 01 09:07:33 2015 -0700
@@ -0,0 +1,106 @@
+Add support for hybrid mode of operation. An user can provide -U option
+to ptpd to have hybrid mode enabled. ptpd version higher than 2.2.0 may have
+hybrid mode enabled by default in which case this patch should be removed.
+
+diff -r 1a6514e3570d src/Makefile
+--- a/src/Makefile Fri Apr 03 18:07:43 2015 -0700
++++ b/src/Makefile Fri Apr 03 21:12:39 2015 -0700
[email protected]@ -43,7 +43,7 @@
+ #CFLAGS += -DDBG_SIGUSR2_CHANGE_DEBUG
+ #CFLAGS += -DPTPD_FULL_OPTIONS
+
+-#CFLAGS += -DPTP_EXPERIMENTAL
++CFLAGS += -DPTP_EXPERIMENTAL
+
+ LDFLAGS+= -lm -lrt
+ LDFLAGS += -lnsl -lsocket -lv12n -m64
+diff -r 1a6514e3570d src/datatypes.h
+--- a/src/datatypes.h Fri Apr 03 18:07:43 2015 -0700
++++ b/src/datatypes.h Fri Apr 03 21:12:39 2015 -0700
[email protected]@ -473,6 +473,11 @@
+
+ Statistics statistics;
+
++#ifdef PTP_EXPERIMENTAL
++ Integer32 MasterAddr; // used for hybrid mode, when receiving announces
++ Integer32 LastSlaveAddr; // used for hybrid mode, when receiving delayreqs
++#endif
++
+ } PtpClock;
+
+ /**
+diff -r 1a6514e3570d src/dep/datatypes_dep.h
+--- a/src/dep/datatypes_dep.h Fri Apr 03 18:07:43 2015 -0700
++++ b/src/dep/datatypes_dep.h Fri Apr 03 21:12:39 2015 -0700
[email protected]@ -133,6 +133,12 @@
+
+ /* used by IGMP refresh */
+ struct in_addr interfaceAddr;
++
++#ifdef PTP_EXPERIMENTAL
++ /* used for Hybrid mode */
++ Integer32 lastRecvAddr;
++#endif
++
+ } NetPath;
+
+ #endif /*DATATYPES_DEP_H_*/
+diff -r 1a6514e3570d src/dep/msg.c
+--- a/src/dep/msg.c Fri Apr 03 18:07:43 2015 -0700
++++ b/src/dep/msg.c Fri Apr 03 21:12:39 2015 -0700
[email protected]@ -40,6 +40,10 @@
+
+ #include "../ptpd.h"
+
++#ifdef PTP_EXPERIMENTAL
++extern RunTimeOpts rtOpts;
++#endif
++
+ /*Unpack Header from IN buffer to msgTmpHeader field */
+ void
+ msgUnpackHeader(Octet * buf, MsgHeader * header)
[email protected]@ -328,6 +332,12 @@
+ /* Table 19 */
+ *(UInteger16 *) (buf + 2) = flip16(DELAY_RESP_LENGTH);
+ *(UInteger8 *) (buf + 4) = header->domainNumber;
++
++#ifdef PTP_EXPERIMENTAL
++ if(rtOpts.do_hybrid_mode)
++ *(char *)(buf + 6) |= PTP_UNICAST;
++#endif
++
+ memset((buf + 8), 0, 8);
+
+ /* Copy correctionField of PdelayReqMessage */
+diff -r 1a6514e3570d src/dep/startup.c
+--- a/src/dep/startup.c Fri Apr 03 18:07:43 2015 -0700
++++ b/src/dep/startup.c Fri Apr 03 21:12:39 2015 -0700
[email protected]@ -662,7 +662,7 @@
+ #endif
+ */
+
+- const char *getopt_string = "?HgGWb:cCf:ST:dDPR:xO:tM:a:w:u:ehzl:o:i:n:N:y:m:v:r:s:p:q:Y:BjLV:XZKF";
++ const char *getopt_string = "?HgGWb:cCf:ST:dDPR:xO:tM:a:w:u:ehzl:o:i:n:N:y:m:v:r:s:p:q:Y:BjLV:XZKFU";
+
+ /* parse command line arguments */
+ while ((c = getopt(argc, argv, getopt_string)) != -1) {
+--- a/src/ptpd2.8 2015-05-18 14:05:20.934031705 -0700
++++ b/src/ptpd2.8 2015-05-18 13:59:54.195214157 -0700
[email protected]@ -27,6 +27,7 @@
+ [-b NAME]
+ [-K]
+ [-u ADDRESS]
++[-U]
+ [-e]
+ [-h]
+ [-l NUMBER,NUMBER]
[email protected]@ -204,6 +205,9 @@
+ .B \-u ADDRESS
+ also send uni-cast to ADDRESS
+ .TP
++.B \-U
++enable hybrid mode which uses both unicast and multicast
++.TP
+ .B \-e
+ run in ethernet mode (currently unimplemented)
+ .TP
--- a/components/ptp/ptp.p5m Wed Jul 01 08:38:58 2015 -0700
+++ b/components/ptp/ptp.p5m Wed Jul 01 09:07:33 2015 -0700
@@ -18,7 +18,7 @@
#
# CDDL HEADER END
#
-# Copyright (c) 2013, 2014, Oracle and/or its affiliates. All rights reserved.
+# Copyright (c) 2013, 2015, Oracle and/or its affiliates. All rights reserved.
#
<transform file path=usr.*/man/.+ -> default mangler.man.stability uncommitted>
@@ -39,9 +39,6 @@
file Solaris/prof_attr path=etc/security/prof_attr.d/ptp
file Solaris/ptp.xml path=lib/svc/manifest/network/ptp.xml
file Solaris/ptp.sh path=lib/svc/method/ptp
-file Solaris/SmfPTPStates.html \
- path=usr/lib/help/auths/locale/C/SmfPTPStates.html
-file Solaris/SmfValuePTP.html path=usr/lib/help/auths/locale/C/SmfValuePTP.html
file path=usr/lib/inet/ptpd
file path=usr/share/man/man1m/ptpd.1m
license ptp.license license="BSD (PTP)" \