Newsgroups: php.internals Path: news.php.net Xref: news.php.net php.internals:116900 Return-Path: Delivered-To: mailing list internals@lists.php.net Received: (qmail 9619 invoked from network); 20 Jan 2022 07:45:10 -0000 Received: from unknown (HELO php-smtp4.php.net) (45.112.84.5) by pb1.pair.com with SMTP; 20 Jan 2022 07:45:10 -0000 Received: from php-smtp4.php.net (localhost [127.0.0.1]) by php-smtp4.php.net (Postfix) with ESMTP id 4C4FF180382 for ; Thu, 20 Jan 2022 00:56:17 -0800 (PST) X-Spam-Checker-Version: SpamAssassin 3.4.2 (2018-09-13) on php-smtp4.php.net X-Spam-Level: X-Spam-Status: No, score=-5.8 required=5.0 tests=BAYES_00,DKIMWL_WL_HIGH, DKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,HTML_MESSAGE, RCVD_IN_DNSWL_MED,SPF_HELO_NONE,T_SPF_TEMPERROR autolearn=no autolearn_force=no version=3.4.2 X-Spam-ASN: AS4983 134.134.136.0/24 X-Spam-Virus: No X-Envelope-From: Received: from mga07.intel.com (mga07.intel.com [134.134.136.100]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by php-smtp4.php.net (Postfix) with ESMTPS for ; Thu, 20 Jan 2022 00:56:16 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1642668977; x=1674204977; h=from:to:cc:subject:date:message-id:mime-version; bh=wqOBhWdpkoGJfSwrpMEBQW9L6ZFRy6xSUpn02yAtoZA=; b=dil0JNuzFRHS9iQUrhPLb8/ESWHPHs1e1E0FtIHqqMWaGt94JkXLzN7z qzpiUOAwKfR1Jc/0Me9GXJrtaDIlTa7K6WO9wzZMofkPKkr2p6mlg9jkp C6rCpuTLsRz3/Rwq81XjqR+mbxsmBHrTO6cQkVqfcH/O/rrN29jAbK5CJ 8b6h84r1ekD01sljcUcG1FRtPRc1JT5FeTr5lQnixURvmnNnoAiAyCEX8 O/HzhQ70MtfaF+0fnGEqim/tlEKxX9uX4Q5puWhoYJjTTg7aokFGJofgQ mhtN9EQpcbe+Pe4WvdtpvgZcWMbgKegbnLwc+2p/o22HcSjJl6qSaeg4t g==; X-IronPort-AV: E=McAfee;i="6200,9189,10232"; a="308641282" X-IronPort-AV: E=Sophos;i="5.88,301,1635231600"; d="scan'208,217";a="308641282" Received: from fmsmga002.fm.intel.com ([10.253.24.26]) by orsmga105.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 20 Jan 2022 00:56:14 -0800 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.88,301,1635231600"; d="scan'208,217";a="622825766" Received: from orsmsx606.amr.corp.intel.com ([10.22.229.19]) by fmsmga002.fm.intel.com with ESMTP; 20 Jan 2022 00:56:13 -0800 Received: from orsmsx612.amr.corp.intel.com (10.22.229.25) by ORSMSX606.amr.corp.intel.com (10.22.229.19) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2308.20; Thu, 20 Jan 2022 00:56:13 -0800 Received: from orsmsx607.amr.corp.intel.com (10.22.229.20) by ORSMSX612.amr.corp.intel.com (10.22.229.25) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2308.20; Thu, 20 Jan 2022 00:56:13 -0800 Received: from ORSEDG601.ED.cps.intel.com (10.7.248.6) by orsmsx607.amr.corp.intel.com (10.22.229.20) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2308.20 via Frontend Transport; Thu, 20 Jan 2022 00:56:13 -0800 Received: from NAM12-DM6-obe.outbound.protection.outlook.com (104.47.59.168) by edgegateway.intel.com (134.134.137.102) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.1.2308.20; Thu, 20 Jan 2022 00:56:11 -0800 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=didV9YfCwkyp8i6TjqjMjye7Cs7rbZOPrFazGNTbMUSDWRx+Od1VQHQhe7OVYRAVHa1QVYCKPPeyrbRVsx+E9QRO6gRsAyfO7JMQV3BL8+7T0LA5NDXZ3GDGi8AJw/yv4FVYq/DsPgUy9HGSlXGoCK6HXI2Zx0lQ8wmLrqyv/ygOR1rtRLe2DVjZ5UwED+Yx7eisXP2p6QN65MzQ9nUX75LgqT/vraSI3oUBtrzZOCcEulORk3EufCV1wS7LBoIkqYQWWdyt9CrvlMuAu3nk97glBLaOr8uTbXBt/g4UIr8nObx2CYFskiYrx7Yzeg9ISjEky4JWeIluye+4DOSaUA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=0YMOcmg0vsLnS1cg8rI94ab0ihOFC5bcfaU4FElK67Y=; b=WREr+pAzDhP0XVw/hPdTwloiV+vHi01tQ2QCcwiW80mXD8f/UAMyOMQaXErBTVvdJKo1uyH5zkpAaQNepApTd6vbn4QsYygjGz/1C+ir36rg4CRXNTAPHaopo4mOVfpPAn5LD0GizRt9PM1RqvAdxGg+mTIDw7BgMjw9wKy1F/nBC35UduyzIdgt70bmukn5KUAzw8Vosz4ITsmytKAkt9UEv7/0wAlT2atRzsm7puKYMgyy8EcoQ3T8zdPobhcImzy7/+YV0i851wXvRIwvutVs3h1pXoZutxuFm9GRPk/LTlpYnSQOA+Vm7CDvjkhDwG9YUbakBQPy8GSuM2q68A== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=none; dmarc=none; dkim=none; arc=none Received: from DM4PR11MB5567.namprd11.prod.outlook.com (2603:10b6:5:39a::15) by BY5PR11MB3864.namprd11.prod.outlook.com (2603:10b6:a03:18f::30) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4888.12; Thu, 20 Jan 2022 08:56:10 +0000 Received: from DM4PR11MB5567.namprd11.prod.outlook.com ([fe80::3c16:168d:6b71:420d]) by DM4PR11MB5567.namprd11.prod.outlook.com ([fe80::3c16:168d:6b71:420d%5]) with mapi id 15.20.4909.011; Thu, 20 Jan 2022 08:56:10 +0000 To: "internals@lists.php.net" CC: "Su, Tao" Thread-Topic: [Help] Reason on when to declare and protect ZEND_API function Thread-Index: AdgN24+zgXAZ7NlRSWu1xgp40nQMDQ== Date: Thu, 20 Jan 2022 08:56:10 +0000 Message-ID: Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: dlp-product: dlpe-windows dlp-reaction: no-action dlp-version: 11.6.200.16 authentication-results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=intel.com; x-ms-publictraffictype: Email x-ms-office365-filtering-correlation-id: 01ce0661-47f2-47d5-3960-08d9dbf2b43e x-ms-traffictypediagnostic: BY5PR11MB3864:EE_ x-microsoft-antispam-prvs: x-ms-oob-tlc-oobclassifiers: OLM:8273; x-ms-exchange-senderadcheck: 1 x-ms-exchange-antispam-relay: 0 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: VZXNlcEzqI8T6LKcbO60B9EDTCIEPHYD3O8eKYdHENfkGXYf/cIJV3wNKCO8Xj17Zn5oBNg3PKbNzndKWtjrNpe3FH2op4X6X/rNlZobV/0/JqjITS1tdhNRw5CnZZJF9G1yK2JMRNbQ5EME7dvKGVTrt5W7wtNRVmWj8+6u9LZ9Tp2H7MbPuYIHC6a+mjOK+oE5gAiSLn3UIllukPvoeIZQBeMTeIQItzqi4e82M1XJW6bxM5H7vlin3BbgYddRnYuZXHchLCVTIBQROl39T//zbrtVfOW3stUK/kXgkAJ1iimCowFgIXVb9SecGvjGIwiSBf+ed4yy99jAQJzmKrgDNB/HYcx9mApYomXq9gvz5Xzvcwqxixuudpf+VHfK+FujVzNytagdapKRGx5KfihGtX7PNk4FMYbtnDQ/cM4RtLAv276TDO+rR3WVypj0zVfyS8h+c5Hq12J9pM1JHdFiOsiycLj+PUG0e4c9Fng/K0EibNQLPKCnu9p4DlkzTqeUJxm5Yv0C+mZMim8CwZkLZOQN4L6IUttkpapdEmLlX7kO2p8pj98Ex5Waj9Juzyrtxhs2mN9U7pPsCxNMak+vVl1+JidyIRxW6B9qZ0rQmi3aKpwcDsSoZZ8xsbavxxFZlIjO26hpOR+aAfk4YQPopA+n8juuFpEcOLEwBVN9Uf7h4qSco8ecxfo+I8VvuE021K51F2oBqR9BYpy3yg== x-forefront-antispam-report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DM4PR11MB5567.namprd11.prod.outlook.com;PTR:;CAT:NONE;SFS:(366004)(4744005)(55016003)(82960400001)(38100700002)(66446008)(8936002)(66556008)(76116006)(66946007)(2906002)(66476007)(9686003)(64756008)(26005)(33656002)(38070700005)(5660300002)(186003)(4326008)(86362001)(6916009)(508600001)(71200400001)(6506007)(122000001)(52536014)(107886003)(83380400001)(316002)(7696005)(8676002);DIR:OUT;SFP:1102; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?us-ascii?Q?8HYlSaZ5rKqSAu6Td6VZ/u8JAJvOCOzq8BnZk4ThmuwJWBNJ1+iG4oGJ2Sr3?= =?us-ascii?Q?3dVAGH59HdsA2sBbwno6cbTjPjSYc2NyXMh/HuhG14rba0Az8FKsJskUtfzp?= =?us-ascii?Q?hw1bbRvq+R2+1MUVF2JXy/5S8VKWw75V1MIoumltdwDyp4gDwFVQydCuJOKZ?= =?us-ascii?Q?6/h1E+K1rBX9XHTBKbqt66ofqz0KUt8K1dSDBEp5igMVukZVGpYCcfGjvPDi?= =?us-ascii?Q?iecjdZFR4p7l9DWK9zxQN4uq1UCATB9E+E0wokDt67C7JKzNZp/CmwhoGSzY?= =?us-ascii?Q?o36Y3/7S/4qSl3cF/KpnPW0hMKVgKDp5U61r/jc/ETfL7RlampJufHQ59lb2?= =?us-ascii?Q?NaBAUH7/iMV6pDULMSs9cH64eNke2V9VDpLKwNc7Oyct8koUo7eMnhN/39lP?= =?us-ascii?Q?cZH0v4/k3JEIjieni7HAtsaGfFyE8k79Yr5z2cq+SLpWtn+DZjaVdQByLZUw?= =?us-ascii?Q?QLAr2abrG4qTLJ7W8oEpZGFFFPRPhevSzJIX9iCYCAOnNFrS4z3KG4pHnZTF?= =?us-ascii?Q?yZHOfL0xeJtT5G1jKK3VfzChmT4U/yR+R0YV1PyRt9p+hw/CaYWVzbMaDTSt?= =?us-ascii?Q?djVDkGt1OpvFgywa58ySBmDX8huaJPImxHuFxE/9DZs6JBPUZ2JkhcxgbKPc?= =?us-ascii?Q?SpXFdO/TgU6Dswkz3n2Qtp8yLq/w1hchmX/jBd8ghsOGbq8d5D8bnEFuZNtD?= =?us-ascii?Q?n9UcN4q/C+jDUekK+3NccCoNxcb4HKSsjgRqPwNcEbaHXzKTklY0eJC9c6Je?= =?us-ascii?Q?4RVDDLeMZ30WsWqdfoDxi1rPj0scS/kLR6PypJLtb09ns5mVWKchT4a3jL4a?= =?us-ascii?Q?j16LQ0lzA7/6isFOz0Ar0OtJ8iQvUE55ExGWcAYPaKKnhsukqYbRPrgHd3yg?= =?us-ascii?Q?s1j+GL63RNoLIvRAVdr4ubvuLA356E2xII6FJadx0ofhihL9xOCLaCuNCm9t?= =?us-ascii?Q?Vpwvdbc2T0OrUrdLuXnZWA3NLoBbinED7zoqDT8cvGPh74n3FkS1cyaXGo23?= =?us-ascii?Q?qvI5cg4zknU2U+Rm3A31O1azF+sY/b1c4tkgd0i5sAuq6wpPhtbSkVFBQ2gN?= =?us-ascii?Q?jHyJ2lyoQ8SuAtOwfbQZluS0aij7iCREGjGQCIxcsIqLhq3dT+Pcc3Xd7pu8?= =?us-ascii?Q?dueK7RB09MOUjYO+LkOSXfKYhyuXXwycH5PVas1DkMzBw8gQL2PlV8Gve+R/?= =?us-ascii?Q?XXICKYJqrriOcW/o80/aFqgoOZR1f4Wt5Cz4nQQRW/Pz7epb+E8wSzPYljFZ?= =?us-ascii?Q?RhvDqyriP+hao+l0XF2AhR8bo3s5HFryxadTQ9tIVQp7g8aIYkW10Ul2lUoO?= =?us-ascii?Q?vbCXk529tRpckIiaXzcgXzRbLadc9w++0gjTzlpF/f4qbIGy3c7mf/gI61Q1?= =?us-ascii?Q?wcTceYIfB9VHilAFOXbI4zao9eORKBYBSuy3VmHe/HBQm6jB8zxGvGLFTWp7?= =?us-ascii?Q?ocO2XiRHAdP4MzEq+UC/L436HhrXZuGIOzq6FAGw9XvHjR+mbuDVgG6KrEmK?= =?us-ascii?Q?A2KS/za5byFDJp4YGUiCNJHYmoXHxnARQ2YSDhgah5e9umFw/O07kde9Fq11?= =?us-ascii?Q?qdufP0bajnFeVw8LOamJXZmTdpg0ytlU77A16On0Nbi4XfPKV+0omnok7hLj?= =?us-ascii?Q?q1rGR9f1RI79Hd1Cfr4l3zw=3D?= Content-Type: multipart/alternative; boundary="_000_DM4PR11MB556709308C3E54A2AFEB7BAC9D5A9DM4PR11MB5567namp_" MIME-Version: 1.0 X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: DM4PR11MB5567.namprd11.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: 01ce0661-47f2-47d5-3960-08d9dbf2b43e X-MS-Exchange-CrossTenant-originalarrivaltime: 20 Jan 2022 08:56:10.1384 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: 46c98d88-e344-4ed4-8496-4ed7712e255d X-MS-Exchange-CrossTenant-mailboxtype: HOSTED X-MS-Exchange-CrossTenant-userprincipalname: vXC9pLSu6z2JeSO8l6TyTxdz422hTT7hQuP01TEvRAmCshDrYebWMaBDwYRdJILbsq00CMkUyDGgq2UHbo0mkQ== X-MS-Exchange-Transport-CrossTenantHeadersStamped: BY5PR11MB3864 X-OriginatorOrg: intel.com Subject: [Help] Reason on when to declare and protect ZEND_API function From: tao.su@intel.com ("Su, Tao") --_000_DM4PR11MB556709308C3E54A2AFEB7BAC9D5A9DM4PR11MB5567namp_ Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: quoted-printable Hello internals, I am trying to read Zend header files to understand its functional interfac= es, but have got confusion and anybody knows why zend_startup_system_id() and z= end_finalize_system_id() do not have to be protected by BEGIN_EXTERN_C()/END_EXTERN_C() enclosure, but zend_add_system_entropy() has to. Is the following code intentional for any reason? And also, these two functions do not have ZEND_API attribute. Thanks. Zend/zend_system_id.h BEGIN_EXTERN_C() /* True global; Write-only during MINIT/startup */ extern ZEND_API char zend_system_id[32]; ZEND_API ZEND_RESULT_CODE zend_add_system_entropy(const char *module_name, = const char *hook_name, const void *data, size_t size); END_EXTERN_C() void zend_startup_system_id(void); void zend_finalize_system_id(void); =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D Tony Su (Su, Tao) make a 'lazy' programmer diligently with efficiency --_000_DM4PR11MB556709308C3E54A2AFEB7BAC9D5A9DM4PR11MB5567namp_--