Received: from malur.postgresql.org ([217.196.149.56]) by arkaria.postgresql.org with esmtps (TLS1.3:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1ntCtU-0004zG-Mt for pgsql-hackers@arkaria.postgresql.org; Mon, 23 May 2022 18:35:04 +0000 Received: from localhost ([127.0.0.1] helo=malur.postgresql.org) by malur.postgresql.org with esmtp (Exim 4.92) (envelope-from ) id 1ntCtT-0005Zm-Eb for pgsql-hackers@arkaria.postgresql.org; Mon, 23 May 2022 18:35:03 +0000 Received: from makus.postgresql.org ([2001:4800:3e1:1::229]) by malur.postgresql.org with esmtps (TLS1.3:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1ntCtT-0005Zc-4E for pgsql-hackers@lists.postgresql.org; Mon, 23 May 2022 18:35:03 +0000 Received: from mail-pg1-x532.google.com ([2607:f8b0:4864:20::532]) by makus.postgresql.org with esmtps (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92) (envelope-from ) id 1ntCtQ-0004bh-UW for pgsql-hackers@postgresql.org; Mon, 23 May 2022 18:35:02 +0000 Received: by mail-pg1-x532.google.com with SMTP id q76so14387108pgq.10 for ; Mon, 23 May 2022 11:35:00 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; h=date:from:to:cc:subject:message-id:references:mime-version :content-disposition:in-reply-to; bh=Ict3KiG1su3ZofztZ43mMRkBDALGgbQr74eFSBgTbyY=; b=YdLoIzP2y1q1t6bcqpltL7GCNVdYxFZQFgmfZSuAw96pocCOprzCpp+sMBHx0IiUzN ThHvp55ZcmxP1B+9zgW7WOGkWxK9SIFcMhg/n2SANdwyA5WSkieHtcDVsmKTuHRWiaWU 1zR7M2Y2teMs3YwHMGGBAvXhVmBWRKVXlGsl8i7yf5I8eIG42WQZCcDYL53gf9B2vZVU F/JGnve8ylZmpvQPMUC/3nuDRYbZkBBY39t55IG1cQcHIQ9PwC2wHRQPL83De5zEdNQ+ piMQMR0iX8F6iy//Bkmenb2/HMSPu6SnKv3obE9HukbJP4Cm2I4K0bWe/vNZ2AFnbY6P j1Bw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:date:from:to:cc:subject:message-id:references :mime-version:content-disposition:in-reply-to; bh=Ict3KiG1su3ZofztZ43mMRkBDALGgbQr74eFSBgTbyY=; b=SD3Zoztq50Ig0rcpOaZsbw/cIkG4cPUUm6QlL5M8uon4eO43O4CtS/9miBSH1xMOOS RcK3qkk8T8jL6RpSKi6fZAJcLizaxTKzoGjI0vgEbAwlejlSmenpULsa0cDR8rQ5Xga2 pMggr+GX+60ffWe/Oo5IJwaAvouWDxUB05T69X31jjvT5MQgGbP/7Gcsr42P61emqYfk CLVf5EyTi+rA6Eg4j3uncbc2ygSQZZ2b95s9nQ9/Avcbg46gHrlszey7ehadodV8oyDc hLb2A1QgHD4B91liJvuFYXM+s/y8I8/Rwhi7eF9UbQOMDRDEWgMqoeJ2Fr4EzUwgBUY0 ghdg== X-Gm-Message-State: AOAM533uu4GnswX3Cl7QJ6FYQEHky9U+4QufHIjeubSymuokkHe1pwK9 RfisVjFBvuDPzW7SRFTBwbyHIKS0MgM= X-Google-Smtp-Source: ABdhPJwbg9JkfyQLtTUlz0UTXWX30Pthneapht4/a0Qo5xNqUtqtI7Tf3ZDop/Hsr0WvezCAARnjPQ== X-Received: by 2002:a05:6a00:a94:b0:4fd:c14b:21cb with SMTP id b20-20020a056a000a9400b004fdc14b21cbmr25070500pfl.53.1653330899365; Mon, 23 May 2022 11:34:59 -0700 (PDT) Received: from nathanxps13 ([50.54.155.70]) by smtp.gmail.com with ESMTPSA id o1-20020a17090a9f8100b001df2538c61dsm21509pjp.23.2022.05.23.11.34.58 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 23 May 2022 11:34:58 -0700 (PDT) Date: Mon, 23 May 2022 11:34:57 -0700 From: Nathan Bossart To: Tom Lane Cc: pgsql-hackers@postgresql.org Subject: Re: allow building trusted languages without the untrusted versions Message-ID: <20220523183457.GA940868@nathanxps13> References: <20220520225619.GA876272@nathanxps13> <571753.1653092411@sss.pgh.pa.us> <20220523165403.GC938919@nathanxps13> <1290329.1653326228@sss.pgh.pa.us> <20220523173805.GB939874@nathanxps13> <1306838.1653330002@sss.pgh.pa.us> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <1306838.1653330002@sss.pgh.pa.us> List-Id: List-Help: List-Subscribe: List-Post: List-Owner: List-Archive: Archived-At: Precedence: bulk On Mon, May 23, 2022 at 02:20:02PM -0400, Tom Lane wrote: > Nathan Bossart writes: >> That's a reasonable point. I'll go ahead an explore some options for >> something along those lines. A couple of questions immediately come to >> mind. For example, should this configuration option just cause these >> functions to ERROR, or should it compile them out? > > Letting them be present but throw error is likely to be far less > painful than the other way, because then you don't need a separate > set of SQL-visible object definitions. You could, in fact, imagine > jacking up an existing database and driving a set of locked-down > binaries under it --- or vice versa. If there have to be different > versions of the extension SQL files for the two cases then everything > gets way hairier, both for developers and users. Agreed. I'll do it that way. -- Nathan Bossart Amazon Web Services: https://aws.amazon.com