From nobody Mon Feb 9 15:14:00 2026 X-Original-To: freebsd-hackers@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4f8pCS5jTWz6RZVW for ; Mon, 09 Feb 2026 15:15:00 +0000 (UTC) (envelope-from lionelcons1972@gmail.com) Received: from mail-ej1-x62e.google.com (mail-ej1-x62e.google.com [IPv6:2a00:1450:4864:20::62e]) (using TLSv1.3 with cipher TLS_AES_128_GCM_SHA256 (128/128 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (2048 bits) client-digest SHA256) (Client CN "smtp.gmail.com", Issuer "WR4" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4f8pCS0jMHz44Sh for ; Mon, 09 Feb 2026 15:15:00 +0000 (UTC) (envelope-from lionelcons1972@gmail.com) Authentication-Results: mx1.freebsd.org; dkim=pass header.d=gmail.com header.s=20230601 header.b=ZSR5BMH0; dmarc=pass (policy=none) header.from=gmail.com; arc=pass ("google.com:s=arc-20240605:i=1"); spf=pass (mx1.freebsd.org: domain of lionelcons1972@gmail.com designates 2a00:1450:4864:20::62e as permitted sender) smtp.mailfrom=lionelcons1972@gmail.com Received: by mail-ej1-x62e.google.com with SMTP id a640c23a62f3a-b8ea3d15580so421559266b.0 for ; Mon, 09 Feb 2026 07:15:00 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1770650092; cv=none; d=google.com; s=arc-20240605; b=WU+QnCHy2bZIezCG+dADyuP5KTlvpKZIdfFbbTxMe6FIU9aTRGpHfys1c8ez1REbP4 sLTbYT4uiLEkH/hgZQAQ006Q4M5r15Oig2LG3Ayl4x6l4Zm6hs83hO81ZSXnuPI1EHZl aK144i54PrMUB+YrBng7613jrpFAMxz+GjdIbqrs1svjx37kLF1tLCHFldvHZatHT89K N5Xg6yWBZPQazMJHa+kPu97aGMSWeWJwSx9MM9xAZBPnyS+IqTQKCVCe9vP4TBAbsst/ EytlaUQPE3CDbr9FXg1uHm2HQSJEbq34ezjCcG6n9wXNa3JVZtz2EgugbJEzpiJelN2k 82mQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20240605; h=to:subject:message-id:date:from:in-reply-to:references:mime-version :dkim-signature; bh=OuENjg878xAQY+BnBwneYN2MVpg8iKFlcJcm/lxxyxs=; fh=bKeb80MuaukQVW6V1ggve8SaqSjkFHK68cQn5aYjc20=; b=Wznt10bhr1XV/TohZgNrie6LaRo3fRcbZBLXH1Z/hEPZdA5lkBkRkIJK0GC7LHsGSd NkVbag2EVNiMN2jS2P7YXN3gNNaUkjvu/lNM/ElvRLRzktMHg79ztNKmKvaTMwjvfzKj LL9tTjqrVjlnG2BQLsEZE4pJuo5e4b2TBVCCQHSNuSuMG1y9TQjIatwLqNa53D2OyU05 EugNl1wRKkaK/4PEvR/YG6lP6vSIolTggOfZJj+oP2HdzFnTEXar7NQin3KJGDfCiLSI wvZs7igGwLTc+vEmZuE06wAQDkULCqtbyNHnQ4iQpTMsLoktBgXODgwtiCRSguSQFhM3 4/FQ==; darn=freebsd.org ARC-Authentication-Results: i=1; mx.google.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1770650092; x=1771254892; darn=freebsd.org; h=to:subject:message-id:date:from:in-reply-to:references:mime-version :from:to:cc:subject:date:message-id:reply-to; bh=OuENjg878xAQY+BnBwneYN2MVpg8iKFlcJcm/lxxyxs=; b=ZSR5BMH0BsVktTNeptYo8Ly28fec6tC3yW7EI5CxfPn45BIvn81K0zNn+j1l/RHB9O yVccwqpkCibogcNYAwOtaFgrE38UfoOLytJoGe0oPVFhbjP8UjoUtUsRCGZqiahpmXdT 5/dicX4ZsC01yY0rui1DA0jE7w6WxigS+NrPUxIEZxw197pLMoaFwbo3kqLCrdPNE6si Jk+OJ4cDkao03mEJNQZjF8S9jLA+jZaD3Z46CcfNFv4/pTSctYgCAYpsWJN+fSjkvjEa ai/fQdcCnmjGqPEQUiPlZTh078TjkHP3RgwINFSuKJ/U2uFHETuHoJBgHD04Ji/E/Kt3 ruqg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1770650092; x=1771254892; h=to:subject:message-id:date:from:in-reply-to:references:mime-version :x-gm-gg:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=OuENjg878xAQY+BnBwneYN2MVpg8iKFlcJcm/lxxyxs=; b=hw4zQmwSEc7VO69RVspbGYkqd3eVZyiIQAhuANHu2t8GwZiD8T1SN8SPWVY0R9KR/e lvhd5uJzO7aKODXhTzNY6lUU8moHsKb8osC4vs/aCi8t/MHsGBeLMslR8+zXvl+ZzcYq Ox7bSpo9fLRinQC8GhXKKtnFKIzhQoZkAwcMAs7iCiMm7KhMiDfrx2ncS+emLF17L/Y2 CjFbqWUK11T3dWDOJa1HgrtdLkgxZIFoBSYdHueY13534vRDY8/0HQX8Q41CVKL9R+zU W9tf2a8fnw29bXtidOAdyWdoyWmgZasKMet9nfxuWf4jqsHjk06VmcCJSK+7as2gjgVt i6Jg== X-Gm-Message-State: AOJu0YyP5yRLB74s8VpW+ijhgYfn+1m/dCAXlJ6VCzkmSQ77GQETJKbT nqQF2UxhowMhTBtfXaYGdmGVu8+cqP5FDPis61gPd5hrwggTm9uzvoi49YQJYQEMQNeQdHp23YT 6jiX1e7PzJbu2JIo4HM/3TJyAbe8U6gBTK+PWzkU= X-Gm-Gg: AZuq6aKzcl5hOvRzuZIdpPbIkKG4KLoyOMKARmX8BCITnCf4aIguUoL83cFoQ8MqxjP +uhOVIvSyGQw8tMPIfx2lo2Vl1kaXuAyE3gcEKUUyr8Zd7cjjRbRINX4F1uh/fjggWt3l683WdF AafjwW9UdDkF0hA+xVNZw7v/i+LETha8wHEyR8TNtWTOwIbNQWoVaD5Nv9rL11JMHPXxXT6pXMQ BEP2/VDE9/ACY4w4dUwOpsv1zjWa/bUFIx5imaNKMVYKHicAsO/O/UJWYen2dkkS0L6s1ROXG6x CQDvDA== X-Received: by 2002:a17:907:2d22:b0:b8e:64e:1ed with SMTP id a640c23a62f3a-b8edf34115emr704181766b.50.1770650092269; Mon, 09 Feb 2026 07:14:52 -0800 (PST) List-Id: Technical discussions relating to FreeBSD List-Archive: https://lists.freebsd.org/archives/freebsd-hackers List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-freebsd-hackers@FreeBSD.org MIME-Version: 1.0 References: In-Reply-To: From: Lionel Cons Date: Mon, 9 Feb 2026 16:14:00 +0100 X-Gm-Features: AZwV_QgFZlcoF1z6mmNHB5I_yB3Hww8OJ72nLvFroJE3qYJnSxIkWXhuo5h8ILg Message-ID: Subject: Re: Implementing O_SYMLINK in FreeBSD? To: Freebsd hackers list Content-Type: text/plain; charset="UTF-8" X-Spamd-Result: default: False [-3.79 / 15.00]; SUBJECT_ENDS_QUESTION(1.00)[]; ARC_ALLOW(-1.00)[google.com:s=arc-20240605:i=1]; NEURAL_HAM_LONG(-1.00)[-1.000]; NEURAL_HAM_MEDIUM(-1.00)[-1.000]; NEURAL_HAM_SHORT(-0.79)[-0.793]; DMARC_POLICY_ALLOW(-0.50)[gmail.com,none]; R_DKIM_ALLOW(-0.20)[gmail.com:s=20230601]; R_SPF_ALLOW(-0.20)[+ip6:2a00:1450:4000::/36:c]; MIME_GOOD(-0.10)[text/plain]; RCVD_TLS_LAST(0.00)[]; TO_DN_ALL(0.00)[]; MIME_TRACE(0.00)[0:+]; FREEMAIL_ENVFROM(0.00)[gmail.com]; TO_MATCH_ENVRCPT_ALL(0.00)[]; FREEMAIL_FROM(0.00)[gmail.com]; RCPT_COUNT_ONE(0.00)[1]; FROM_HAS_DN(0.00)[]; MISSING_XM_UA(0.00)[]; MLMMJ_DEST(0.00)[freebsd-hackers@freebsd.org]; PREVIOUSLY_DELIVERED(0.00)[freebsd-hackers@freebsd.org]; FROM_EQ_ENVFROM(0.00)[]; DKIM_TRACE(0.00)[gmail.com:+]; MID_RHS_MATCH_FROMTLD(0.00)[]; RCVD_COUNT_ONE(0.00)[1]; ASN(0.00)[asn:15169, ipnet:2a00:1450::/32, country:US]; DWL_DNSWL_NONE(0.00)[gmail.com:dkim]; RCVD_IN_DNSWL_NONE(0.00)[2a00:1450:4864:20::62e:from] X-Rspamd-Queue-Id: 4f8pCS0jMHz44Sh X-Spamd-Bar: --- On Fri, 6 Feb 2026 at 23:43, Konstantin Belousov wrote: > > On Fri, Feb 06, 2026 at 09:09:18PM +0100, Lionel Cons wrote: > > Would it be possible to implement O_SYMLINK to open a symlink directly > > in FreeBSD? > What is the semantic, exactly? O_SYMLINK opens the symlink itself, and not the file it is referring to. If the name is not a symlink, the openat() will fail. This is similar to Win32 FILE_FLAG_OPEN_REPARSE_POINT. O_PATH is not much of an option, because the Linux definition is fuzzy at best, basically "save path in fd, and append it to whatever is used", which has gaping holes in terms of loopholes. O_PATH is only there because Linux HATES POSIX and didn't want to implement O_SEARCH. Lionel