probando
This commit is contained in:
@@ -14,7 +14,7 @@ use std::sync::Mutex;
|
|||||||
use tokio::signal::unix::{signal, SignalKind};
|
use tokio::signal::unix::{signal, SignalKind};
|
||||||
use tracing::{info, warn};
|
use tracing::{info, warn};
|
||||||
use tracing_subscriber::EnvFilter;
|
use tracing_subscriber::EnvFilter;
|
||||||
use zbus::{fdo, interface, Connection};
|
use zbus::{fdo, interface};
|
||||||
|
|
||||||
const BUS_NAME: &str = "org.freedesktop.hostname1";
|
const BUS_NAME: &str = "org.freedesktop.hostname1";
|
||||||
const OBJ_PATH: &str = "/org/freedesktop/hostname1";
|
const OBJ_PATH: &str = "/org/freedesktop/hostname1";
|
||||||
|
|||||||
@@ -4,7 +4,6 @@
|
|||||||
//! Idempotente: si los puntos de montaje ya existen (initramfs los montó),
|
//! Idempotente: si los puntos de montaje ya existen (initramfs los montó),
|
||||||
//! el segundo mount falla con EBUSY y simplemente lo ignoramos.
|
//! el segundo mount falla con EBUSY y simplemente lo ignoramos.
|
||||||
|
|
||||||
use anyhow::Context;
|
|
||||||
use nix::mount::{mount, MsFlags};
|
use nix::mount::{mount, MsFlags};
|
||||||
use tracing::debug;
|
use tracing::debug;
|
||||||
|
|
||||||
|
|||||||
@@ -183,6 +183,8 @@ type TemporaryAuth = (String, String, (String, HashMap<String, OwnedValue>), u64
|
|||||||
struct PolicyDecision {
|
struct PolicyDecision {
|
||||||
allow: bool,
|
allow: bool,
|
||||||
/// Origen: "fractal" si vino del bus, "default-allow" si no había proveedor.
|
/// Origen: "fractal" si vino del bus, "default-allow" si no había proveedor.
|
||||||
|
/// Sólo aparece en `Debug` (logging); ningún consumer lo lee programmático.
|
||||||
|
#[allow(dead_code)]
|
||||||
source: &'static str,
|
source: &'static str,
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -1,5 +1,12 @@
|
|||||||
//! Eventos internos del bucle primordial. Todo cambio de estado del fractal
|
//! Eventos internos del bucle primordial. Todo cambio de estado del fractal
|
||||||
//! pasa por aquí — la única vía de mutación del grafo desde tasks externas.
|
//! pasa por aquí — la única vía de mutación del grafo desde tasks externas.
|
||||||
|
//!
|
||||||
|
//! Este módulo es **vocabulario**: declara el universo completo de eventos
|
||||||
|
//! del fractal. Algunas variantes/campos están reservados para flujos
|
||||||
|
//! aún no implementados (capabilities, signal-driven shutdown). Silenciar
|
||||||
|
//! `dead_code` evita ruido sin perder la declaración del contrato.
|
||||||
|
|
||||||
|
#![allow(dead_code)]
|
||||||
|
|
||||||
use ente_bus::{BusMessage, BusRequest, BusResponse, PeerCreds};
|
use ente_bus::{BusMessage, BusRequest, BusResponse, PeerCreds};
|
||||||
use ente_card::{Capability, EntityCard};
|
use ente_card::{Capability, EntityCard};
|
||||||
|
|||||||
@@ -57,6 +57,9 @@ impl EnteGraph {
|
|||||||
/// Extiende un grant existente. Devuelve `true` si renovó. Si el token
|
/// Extiende un grant existente. Devuelve `true` si renovó. Si el token
|
||||||
/// no existe o ya expiró, `false` (el cliente debe re-acquire).
|
/// no existe o ya expiró, `false` (el cliente debe re-acquire).
|
||||||
/// Usa el TTL específico de la cap del grant.
|
/// Usa el TTL específico de la cap del grant.
|
||||||
|
///
|
||||||
|
/// Reservado para el flujo de capability renewal (no cableado todavía).
|
||||||
|
#[allow(dead_code)]
|
||||||
pub fn renew_grant(&mut self, token: u64) -> bool {
|
pub fn renew_grant(&mut self, token: u64) -> bool {
|
||||||
let now = Instant::now();
|
let now = Instant::now();
|
||||||
if let Some(g) = self.grants.get_mut(&token) {
|
if let Some(g) = self.grants.get_mut(&token) {
|
||||||
|
|||||||
@@ -23,7 +23,8 @@ use std::collections::{BTreeMap, BTreeSet, HashMap};
|
|||||||
use tokio::sync::{mpsc, oneshot};
|
use tokio::sync::{mpsc, oneshot};
|
||||||
use ulid::Ulid;
|
use ulid::Ulid;
|
||||||
|
|
||||||
pub use shutdown::SHUTDOWN_GRACE;
|
// `SHUTDOWN_GRACE` está re-exportado bajo `crate::graph::shutdown::SHUTDOWN_GRACE`
|
||||||
|
// directo; la re-export adicional aquí no se usa todavía.
|
||||||
|
|
||||||
/// Bit alto encendido en `seq` para invokes server-iniciados — evita choque
|
/// Bit alto encendido en `seq` para invokes server-iniciados — evita choque
|
||||||
/// con secuencias allocadas por clientes.
|
/// con secuencias allocadas por clientes.
|
||||||
@@ -74,6 +75,9 @@ pub(in crate::graph) struct GrantedCapability {
|
|||||||
/// TTL default para grants cuando la cap no tiene override. 60s es un
|
/// TTL default para grants cuando la cap no tiene override. 60s es un
|
||||||
/// compromiso: largo enough para evitar churn en patrones interactivos,
|
/// compromiso: largo enough para evitar churn en patrones interactivos,
|
||||||
/// corto enough para que credenciales filtradas expiren rápidamente.
|
/// corto enough para que credenciales filtradas expiren rápidamente.
|
||||||
|
///
|
||||||
|
/// Reservado para el flujo de capability granting (no cableado todavía).
|
||||||
|
#[allow(dead_code)]
|
||||||
pub const DEFAULT_GRANT_TTL: std::time::Duration = std::time::Duration::from_secs(60);
|
pub const DEFAULT_GRANT_TTL: std::time::Duration = std::time::Duration::from_secs(60);
|
||||||
|
|
||||||
/// Quota máxima de tokens activos por (holder, cap). Caps escaladas tienen
|
/// Quota máxima de tokens activos por (holder, cap). Caps escaladas tienen
|
||||||
|
|||||||
Reference in New Issue
Block a user